1977 3.11 1979

Vol.3 n°11 november 1978

Vol.3 n°11 november 1978

(byte_1978_11.jpg)

[editor : Carl T. Helmers Jr.] [publisher : Virginia Londoner (Virginia Londner), Gordon R Williamson] [art : Stephen Kruse, Wai Chiu Li, Dorothy Shamonsky, Ellen Shamonsky] [cover : Ken Lodding] #Magazine

p.4 In This BYTE

p.4 In This BYTE

#Abstract

About the Cover: This month's cover by artist Ken Lodding emphasizes the personal computing potential of the OSCAR amateur radio satellites described in Joe Kasser's article on page 48. When Ken isn't doing technology-related art work, he helps design and implement experimental systems for Digital Equipment Corp in Merrimack NH.

p.16
p.16

One of the basic building blocks of any computer chess playing program is the exchange evaluator. Authors Dan and Kathe Spracklen describe the exchange evaluator used in their Sargon program in An Exchange Evaluator for Computer Chess. page 16

p.34
p.34

Taylor series expansions are not necessarily the best polynomial approximations for many functions. Fred R Ruckdeschel describes several minimax and rational polynomial approximations for some common functions in Functional Approximations. A method for creating polynomial approximations for microcomputers using mathematical tables and large system statistical routines is also discussed. page 34

p.48
p.48

One method of connecting computers into a communications network is by VHF radio stations. To ease some of the physical difficulties encountered with this arrangement, a satellite can be introduced into the system, and then, as Joe Kasser says, The Sky's the Limit for personal computer users. page 48

p.62
p.62

One theme of this issue is VHF communication among computers to produce a network. There are other types of networks which are available to computer users. One of these uses a Distributed Network, which is described by Glen R Horton. page 62

p.76
p.76

Ciarcia's Circuit Cellar turns to melodrama this month as Steve and Lloyd are confronted by a mysterious stranger. All ends happily, however, with the aid of a computer controlled stepper motor driven infrared and visible light scanner. Read I've Got You in My Scanner! page 76

p.90
p.90

One of the more fascinating uses of a computer, teaching courses, is frequently known as computer assisted instruction. George A Gerhol describes one group of people that is actively involved in implementing Computer Assisted Instruction on a Microcomputer. page 90

p.100
p.100

As part of the never ending struggle for truth, beauty and the ultimate in high level languages, David Wilson provides readers with a Languages Forum proposal, Defining a Language: PL/B, a combination of some of the features of a high level language like BASIC with access to assembly language details when necessary. page 100

p.112
p.112

Controlling a physical system is a natural for the microprocessor: parameters can often be changed in a matter of seconds in software without any mechanical changes to the system. A simple airflow control system is described in Garnet L Hill's article, A Classroom Demonstration: Controlling a System with a Microcomputer. page 112

p.120
p.120

The VHF communication network already in existence provides a readily available communication network for the computer experimenter. R E Bruninga describes one system which is up and running in his article A Multiuser Data Network. page 120

p.150
p.150

A home computer system can be used for communication among many people. This month Ward Christensen and Randy Suess describe their implementation of a Hobbyist Computerized Bulletin Board. page 150

p.158
p.158

For people who are just being introduced to the world of microprocessors, the first steps can seem confusing. For a description of one device which can aid the introduction read W N Hubin 's review of the Heath Microprocessor Training System. page 158

p.160
p.160

Craig Anderton's simple circuit described in A Cassette Interface Switching Box for the TRS-80 shows you how to operate the cassette recorder manually and monitor tapes while they are being read in without having to unplug any cables. page 160

p.162
p.162

This month we continue the series Creating a Chess Player by Peter W Frey and Larry R Atkin with the first half of Chess 0.5, a program written in Pascal by Larry Atkin, who is coauthor with David Slate of the world championship computer chess program, Chess 4.6. page 162

p.182
p.182

In this issue, Kin-Man Chung and Herbert Yuen conclude their series of articles on A "Tiny" Pascal Compiler with a discussion of a p-code (pseudocode) to 8080 code conversion program and the needed run time routines. page 182

p.6 On the Virtues of Writing Editors

p.6 On the Virtues of Writing Editors

[author : Carl Helmers] #Edito

Extract : «  Editors. This is a word of multiple definitions. One definition is implicit in the job description of myself and my associates at BYTE. Another definition is that applied to a class of utility programs which every BYTE reader's computer system has in some form or another. It is this latter definition which provides the subject for this editorial.

What is often ignored is the fact that editor programs make an excellent form of software project, less complex than an interpreter or a compiler, but of sufficient magnitude to be interesting and educational. The problems and characteristics of editors are analogous to those of compilers and interpreters, especially when viewed as tools of software development. Just as compilers beget better compilers, editors can be used to edit better editors.

Software projects are some of the most exciting avocational applications of personal computers, applications which emphasize computing as an art form and means of expression of personal tastes. This editorial on the philosophy of software projects in general and text editing in particular was inspired by recent completion of a text editor begun as a spare time project in March of this year. Five months and many evening and weekend hours later it is now mid August and the editor program is working sufficiently well to serve as the primary monitor program and software tool of my homebrew computer system. [...]  »

TABLE OF CONTENTS

Foregroud

Foregroud

p.16 AN EXCHANGE EVALUATOR FOR COMPUTER CHESS

p.16 AN EXCHANGE EVALUATOR FOR COMPUTER CHESS

[theme : Software Chess] [author : the Spracklens] #GameBoard #Algorithm #Listing #Assembly

Extract : «  Three main tasks are basic to computer chess: generation of moves, evaluation of positions and selection between alternatives. Of these three, the central determining factor in the strength of the program relative to the capacity of the host machine is the evaluation segment. The reason for this is that any program must come to grips with the task of move generation, and various techniques of "pruning" decision trees are by now widely known. Furthermore, the smaller and slower the host machine, the more importance must be assigned to the evaluation facility. If a search can be carried to a great depth of ply, inaccuracies can generally be corrected long before the machine has been committed to a costly line of play. (A ply is a move by one player, ie: half of a complete move involving both players.) On the other hand, if processing limitations prevent a critical exchange from being examined to its conclusion, then not just accuracy but clairvoyance is demanded. Thus an attack evaluator assumes tremendous importance in a microcomputer chess program, much more so than in a large scale machine. But the limitations placed on the programmer of an 8 bit machine make it correspondingly more difficult to achieve this type of predictive power. The ability of Sargon (a chess playing program we wrote in Z-80 assembler language) to accurately forecast the outcome of an exchange has been the greatest single factor in its success. [...]  »

p.48 THE SKY'S THE LIMIT: Ham Radio for Intercomputer Communication

p.48 THE SKY'S THE LIMIT: Ham Radio for Intercomputer Communication

[theme : Personal Computing Networks] [author : Kasser] #Networks

Extract : «  This article outlines how intercomputer communication networks can be set up using existing amateur radioteletypewriter (RTTY) networks, without requiring the computer user to have an amateur radio license. Using modified radio message handling codes, a communications language is developed that allows message forwarding, file transfers for batch processing, and interactive use of a central computer. In all cases compatibility has been established between simple systems and complex ones such that the network can be accessed by terminals as well as computers. Finally, the network concept is merged with space age technology to outline how a worldwide personal computing communications network can be established with minimal message routing information requirements, using the AMSAT Phase II and Phase III amateur radio communications satellites.

While discussing intercomputer communications, let us consider that which exists now and that which is soon going to exist. The communications system should be set up so that one can use the network with a minimum investment in equipment. As the system becomes more sophisticated, so will the system capability. [...]  »

p.76 I'VE GOT YOU IN MY SCANNER!

p.76 I'VE GOT YOU IN MY SCANNER!

[theme : Applications] [author : Ciarcia] #OpticalInput #Listing #BASIC #Electronic

Extract : «  [...] At the conclusion of this episode I couldn't help but be concerned about the detection logic of the sophisticated alarm I had installed. There were sensors across critical points in the driveway and the road leading to the house that could detect the presence of a car or person. But, because of the likelihood of false triggering by wild animals, I hesitated to place similar detectors in the woods surrounding the house. I had thought the woods were impassable, but I guess I was wrong. The common denominator for anyone trying to make it through those woods at night is the necessity of a light. It should seem easy in principle to just place a light activated switch out there and activate the sequence when it detects some light source. Unfortunately, since the sensitivity would have to be relatively high, it would no doubt be accidentally triggered from lightning bolts and wayward fireflies. Complex integration and delay logic could be incorporated which would eliminate many false alarms but light level is still the only detection quantity.

Since a light source such as a flashlight or motor vehicle would have to move to approach the house, motion is another necessary parameter to consider. Most motion detection systems are passive beams whose sequential interruption triggers an appropriate response to a time and distance algorithm. Such a system of infrared or visible light beams, sufficient to protect four or five acres of property, would be prohibitively expensive if it incorporated a laser light source, and probably couldn't work reliably without one.

If we accept the premise that anyone coming through the woods on my property would need a flashlight or lantern, etc, then to detect the presence of an intruder requires a combination of light level and motion.

There are a number of methods that achieve the desired result. The most straightforward is to use a television camera, digitize the image, and after adjusting for ambient light changes, compare it to a previous digitized image. Many of the most sophisticated alarm systems incorporate this feature. While it is not beyond the capability of the more than modest home computer, it would be expensive in this application. [...]  »

p.100 DEFINING A LANGUAGE: PL/B

p.100 DEFINING A LANGUAGE: PL/B

[theme : Languages Forum] [author : Wilson] #Languages #Listing #Programming

Extract : «  The person who writes a software package for microprocessors is faced with a difficult choice. If the package is written in BASIC, it will use a lot of memory and execute slowly. Certain operations, such as "shift" and "exclusive or," which the microprocessor can do easily, are not available in the standard BASIC language. On the other hand, if the package is written in assembly language, it will not be portable. Four separate versions might be needed for the 8080, Z-80, 6800 and 6502.

This article gives an initial proposal for the middle level language PL/B. As in assembly language, the programmer is given access to those operations that microprocessors can do easily. PL/B programs will be compiled into machine language; they will not be interpreted as in BASIC. PL/B is not an easy language; it is almost as difficult to write a program in PL/B as it is to write it in one of the assembly languages. On the other hand, PL/B programs will be portable.

The first part of this discussion describes the PL/B language. It is written for the experienced assembly language programmer. The second part, written for the person who has previously implemented an assembler or BASIC interpreter, deals with how the PL/B language could be implemented. The PL/B language is designed to be easy to compile: a PL/B compiler should fit into an 8 K byte computer. [...]  »

p.112 A CLASSROOM DEMONSTRATION

p.112 A CLASSROOM DEMONSTRATION

[theme : Control Systems] [author : Hill] #Experience #Interface #Algorithm #Electronic #Listing #Assembly

Extract : «  Microprocessors are large scale integrated circuits that consist of a central processing unit and a control section, with provisions for handling parallel binary data in communication with various types of memory and peripheral devices. The use of such a small computer is fast becoming an everyday phenomenon. The ubiquitous nature of small computers implemented with microprocessors makes it imperative that the complete course in the physical sciences cover these tools of control in some way. The purpose of this article is to point out a fairly simple application which illustrates how microprocessor control systems can be demonstrated to students in teaching laboratories of engineering and physical sciences. The example can be used as a classroom demonstration or laboratory experiment suitable for advanced high school or college levels depending upon the degree of detail provided by the teacher.

The object of this experiment is to illustrate how a computer program, running in a simple microprocessor, can be used as a control element for a system. The microprocessor and its program form a sort of complicated "black box" receiving inputs from sensors and calculating an output presented to an actuator. In the 1960s, before the existence of microprocessor technology, such black boxes were often constructed out of smaller integrated circuits and programmed by wiring the pins. Earlier than the 1960s, many of the functions now commonplace in digital electronics were simply prohibitively expensive or impossible to achieve. The advent of the programmable processor, however, brought a flexibility of function not possible with such "hardwired" logic: changing a program, the "software" of the application, can be done at the flick of a button rather than through tedious rewiring. [...]  »

p.120 A MULTIUSER DATA NETWORK: Communicating Over VHF Radio

p.120 A MULTIUSER DATA NETWORK: Communicating Over VHF Radio

[theme : Networking] [author : Bruninga] #Networks #Algorithm #Electronic

Extract : «  One of the more exasperating aspects of getting started in microcomputing is the cost of suitable IO devices. There is a rather large group of amateurs who already have terminals up and running; however, they have no microcomputer to play with. Our local computer club was such a group, having formed from a group of radio amateurs already connected via a VHF radio informal teletypewriter network. The availability of these inexpensive surplus Baudot code teletypewriters has been frequently espoused in the literature, and articles covering ASCII to Baudot conversion are plentiful.

While our club matured, and with interest in microcomputing mushrooming at the same time, the idea to design a microcomputer into the network was a natural step. It was soon apparent that developing hardware and software to provide all of the desired functions was impossible for any gainfully employed individual. To spread out the effort and to get as much participation as possible, it was decided to first bring up the microcomputer with a simple monitor system to enable anyone on the net to have full access to memory, and to help in writing software for any desired routines or pet projects. It is this microprocessor system which is to be described herein. But first we will give a description of the teletypewriter net and of the usual operating practices governing the participation of microcomputers. [...]  »

p.160 A CASSETTE INTERFACE SWITCHING BOX FOR THE TRS-80

p.160 A CASSETTE INTERFACE SWITCHING BOX FOR THE TRS-80

[theme : Hardware] [author : Anderton] #Interface #Storage #Electronic

Extract : «  Recently, I had the chance to borrow a Radio Shack TRS-80 for the purpose of getting started in the art of writing programs. The aspect of its operation that pleased me the most was the incredibly easy start up, which involved locating a wall socket and opening the manual. In addition, I liked having a cassette recorder and interface included in the TRS-80 package, making it easy to store programs on cassette.

After working with the unit for a while, I noticed that I was saving programs with increasing frequency. Being new at the game, I would often develop a program to a certain point and then make a save. When, on subsequent passes, I wrote in some kind of garbage that crashed the program, or made some other grievous error, I always had the cassette as a point of reference for analyzing what went wrong and why.

Unfortunately, the cassette interface sys- tem has a few mechanical peculiarities that detract from the overall usefulness of the system. This article is about remedying these particular problems with a simple, very inexpensive and easy to use switching box that inserts between the recorder itself and the combined computer/keyboard unit. This box requires no modifications of any kind to the TRS-80, so you can keep your warranty intact too. [...]  »

p.162 CREATING A CHESS PLAYER, Part 2: Chess 0.5

p.162 CREATING A CHESS PLAYER, Part 2: Chess 0.5

[theme : Computer Chess Software] [author : Frey-Atkin] #GameBoard #Listing #Pascal

Extract : «  We have attempted to incorporate several features which make the search process more efficient and others which increase the user's options. Both of these enhancements are important. The first set of features (incremental updating, iterative searching, staged move generation, etc) were described in general terms in part 1 . These features reduce computation to the point where a move can be selected in a reasonable amount of time even with a full-width search. The second set of features (special control and print commands, accepting chess moves in standard notation) not only add to the pleasure of using the program, but also make the debugging process much easier. The price for these enhancements is a longer, more complicated program. We hope the length of our listing will not discourage the reader from becoming actively involved.

Pascal was developed to provide a logical and systematic higher level language which could produce reasonably efficient machine code for existing hardware. Computer programs can be conceptualized in terms of two essential parts, descriptions of data and descriptions of actions which are to be performed on the data. Pascal requires that every variable occurring in the program be introduced by a declaration statement which associates an identifier and a data type with that variable. The data type defines the set of values which may be assumed by the variable. Since a chess program involves a large number of variables, our program begins with a long list of declaration statements. [...]  »

p.182 A "TINY" PASCAL COMPILER, Part 3: P-Code to 8080 Conversion

p.182 A "TINY" PASCAL COMPILER, Part 3: P-Code to 8080 Conversion

[theme : Pascal] [author : Chung-Yuen] #Programming #Pascal

Extract : «  In part 1 of this series (September 1978 BYTE, page 58) we defined a Pascal subset language in terms of syntax diagrams. The p-machine and its instruction set and a p-code interpreter were also described. In part 2 (October 1978 BYTE, page 34) we presented the design and implementation of the p-compiler. The subject matter for this part is the translation of p-codes to executable 8080 machine codes. We will also discuss the implementation of run time support routines and code optimization.

Compiler-Interpreter Systems

To understand why we need a p-code to 8080 translator, we should first take a brief look at the different structures of compiler- interpreter systems. The most widely used structure for microcomputers is the interpreter. Since interpreters are written in the target computer's assembly language, their memory size is small. They are self-contained in the sense that they include* an editor for creating source programs and run time routines to do all computations. Memory storage for source programs is also small. The only disadvantage is speed. Execution time for a typical BASIC program is estimated to be about 300 to 1000 times the execution time of the same program written in assembly language. Interpreters may spend more than 70 percent of their time scanning source symbols character by character, parsing the syntax and checking errors. No matter how many times a program statement is executed, the parsing procedure is repeated every time. [...]  »

Backgroud

Backgroud

p.34 FUNCTIONAL APPROXIMATIONS

p.34 FUNCTIONAL APPROXIMATIONS

[theme : Numbers] [author : Ruckdeschel] #Listing #BASIC #Mathematics #Book

Extract : «  Many BASIC interpreters presently in use have limited function calculation capability. Almost all interpreters larger than 4 K bytes have built-in routines for determining square roots, logarithms and exponentials, as well as some trigonometric functions like sine and cosine. Several interpreters also provide inverse trigonometric functions via the arctangent function.

However, many minicomputer and microcomputer systems do not have such software. Also, some of the newer microprocessors presently do not have much support software. I have recently been developing software for use with the North Star Micro-Disk system; specifically, working with North Star BASIC, version 6, release 2. The North Star software contains sine and cosine functions but no inverse trigonometric routines. This deficiency led to a cursory investigation of series approximations which very quickly showed that Taylor series expansions are not generally optimum for computer use. [...]  »

p.62 DISTRIBUTED NETWORK

p.62 DISTRIBUTED NETWORK

[theme : Networking] [author : Horton] #Networks

Extract : «  This article describes a study in loosely coupled distributed networking conducted as part of my graduate degree plan at the University of Houston at Clear Lake City TX. During the past two years, development work has been focused on implementing a modular microcomputer system used in the classroom as a teaching tool. The study uses the basic architecture as the foundation for the formulation of the network. [...]  »

p.90 COMPUTER ASSISTED INSTRUCTION ON A MICROCOMPUTER

p.90 COMPUTER ASSISTED INSTRUCTION ON A MICROCOMPUTER

[theme : Applications] [author : Gerhold] #Education #Programming

Extract : «  Computer assisted instruction (CAI) could alter the delivery of education profoundly. This has been known for years, but not much has happened in response, partly because of expensive hardware, and partly because of lack of quality courseware. Although minicomputer based CAI systems need not be expensive on a per terminal hour basis, the initial capital investment for a small number of terminals is too high for most school systems. (Our campus system costs 30 cents per hour per terminal amortized over 24 ports for five years at 200 hours per month exclusive of terminals.) Remote terminals are not attractive because of prohibitive line costs. Thus the field is open for microprocessor based systems. They are inexpensive to operate; the initial investment is reasonable; there are no line costs; and individual systems can be tailored for particular applications. The difficulty with microprocessor based systems lies in the second area, the lack of quality courseware.

Production of quality courseware is a demanding task which requires experienced teachers as authors, extensive testing with a variety of students, and repeated editing on the basis of this testing. Potential authors are usually not computer aficionados, so programming in appropriate high level languages must be possible. Testing requires elaborate record keeping and file sorting capabilities, and the collection of results from multiple terminals. Therefore, the system requirements for the development of quality courseware imply use of a multi- terminal, large memory system (one beyond the capabilities of present microprocessors). Therefore we decided to develop a microprocessor based system which could be used to deliver CAI courseware which was written, tested and edited on our campus terminal system. In this way we can combine low delivery cost with quality courseware.

Our CAI machine consists of a microprocessor, a floppy disk and a video terminal. Our developmental system uses a Southwest Technical Products 6800 computer, a Midwest Scientific Instruments FD-8 floppy disk system or a PerCom minifloppy disk system and an Ann Arbor Design III video terminal. We have completed a PASCAL version, are working on a Z-80 and multiuser 6800 version, and are contemplating a 6502 version. Also, since December 1977, we have been running test programs on the SwTPC 6800 system. [...]  »

p.150 HOBBYIST COMPUTERIZED BULLETIN BOARD

p.150 HOBBYIST COMPUTERIZED BULLETIN BOARD

[theme : Personal Computing Networks] [author : Christensen-Suess] #Networks #Protocols #SocialNetworks #Book

Extract : «  The Computerized Hobbyist Bulletin Board System is a personal computer based system for message communication among experimenters. People with terminals or computers equipped with modems call in to leave and retrieve messages. It was conceived, designed, built, programmed, tested, and installed in a 30 day period (January 16 1978 to February 16 1978) by the two of us. In an effort to generate material for our computer club's newsletter, I first thought of the idea and discussed it with Randy on January 16 1978.

We laid out the hardware requirements: an 8080 processor with 24 K bytes of memory, single floppy disk, modem interface, and some sort of local keyboard and display. Randy scoured the computer stores and purchased a mother board and two 4 K byte memory boards at a reasonable price. I talked with Lloyd Smith and Bill Bassett, who operate DMA Inc, a manufacturer of floppy disk drive systems based on the Tarbell controller and the Innovex (now Innotronics) floppy disk drive. DMA offered to donate 40 percent of the cost of a controller and floppy disk drive to the project. I purchased the floppy disk drive, controller and CP/M license, and loaned 24 K bytes of memory to the project, pending receipt of 16 K bytes offered by DMA. Randy donated his D C Hayes modem board, PolyMorphics VTI, SwTPC keyboard, power supply, chassis, IMSAI 8080 processor card and Vector memory board. [...]  »

p.158 HEATH MICROPROCESSOR TRAINING SYSTEM

p.158 HEATH MICROPROCESSOR TRAINING SYSTEM

[theme : ProductReview] [author : Hubin] #Review #Computer #Programming #Initiation

(byte_1978_11_p158.jpg)

Extract : «  How does a stranger gain entrance to the Valhalla of microprocessing? Who will provide bits of knowledge that logically string into byte capability? Herein lies the siren song sung by the new Heath 6800 based ET-3400 Trainer and the accompanying EE-3401 Microprocessor Course.

Heath aimed in my direction when they designed this trainer. It will appeal to anyone who has been enticed by microprocessors but has not yet bought one, a person who probably has done some high level computer programming, and one who has a working knowledge of digital circuits. Persons already caught in the web of programming are well known for their susceptibility to microprocessors, although such a background is neither assumed nor necessary for this course. I happen to be a professional proponent of the joys to be found in number crunching. Some background in digital electronics is needed (though several laboratory timer projects proved quite adequate in my case). [...]  »

Nucleus

Nucleus

p.10 Letters

p.10 Letters

p.66 Programming Quickie: Checkbook Balancer

p.66 Programming Quickie: Checkbook Balancer

p.74 Machine Language Puzzler: TIMOUT

p.74 Machine Language Puzzler: TIMOUT

p.96 Event Queue

p.96 Event Queue

p.132 Book Reviews

p.132 Book Reviews

#Book

Extract : «  Etudes for Programmers by Charles Wetherell Prentice-Hall, Englewood Cliffs NJ 1977 200 pages paperback $12.95 [...]

Program Style, Design, Efficiency, Debugging, and Testing by D Van Tassel Prentice-Hall Inc Englewood Cliffs NJ 07632 256 pages $13.50 [...]

(Microcomputer) Problem Solving Using PASCAL by Kenneth L Bowles Springer-Verlag, New York 1977 563 pages $9.80  »

p.135 Puzzle: Hextext

p.135 Puzzle: Hextext

p.136 Technical Forum: Transmission of Digital Data

p.136 Technical Forum: Transmission of Digital Data

p.140 BYTE's Bits

p.140 BYTE's Bits

p.146 BYTE's Bugs

p.146 BYTE's Bugs

p.148 Clubs, Newsletters

p.148 Clubs, Newsletters

#Association

p.193 What's New?

p.193 What's New?

p.230 Unclassified Ads

p.230 Unclassified Ads

p.232 BOMB

p.232 BOMB

p.232 Reader Service

p.232 Reader Service

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

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

p.145 Administrative Systems Inc

p.145 Administrative Systems Inc

p.140 Advanced Access Group

p.140 Advanced Access Group

p.175 AJA Software

p.175 AJA Software

p.98 p.99 Alpha Micro Sys

p.98 p.99 Alpha Micro Sys

p.106 Alpha Supply

p.106 Alpha Supply

p.222 American Terminals

p.222 American Terminals

p.93 Anderson Jacobson

p.93 Anderson Jacobson

p.12 p.13 Apple Computer

p.12 p.13 Apple Computer

p.173 Art-by-Computer

p.173 Art-by-Computer

p.218 ATV Research

p.218 ATV Research

p.206 Atwood Enterprises

p.206 Atwood Enterprises

p.18 Bailey Controls

p.18 Bailey Controls

p.223 Beckian Enterprises

p.223 Beckian Enterprises

p.109 p.110 p.111 p.125 p.131 p.213 BITS

p.109 p.110 p.111 p.125 p.131 p.213 BITS

p.149 Bootstrap Enterprises

p.149 Bootstrap Enterprises

p.148 Buss

p.148 Buss

p.179 BYTE Back Issues

p.179 BYTE Back Issues

p.123 BYTE Subscribers

p.123 BYTE Subscribers

p.179 BYTE WATS Line

p.179 BYTE WATS Line

p.142 Byte Industries

p.142 Byte Industries

p.201 California Digital

p.201 California Digital

p.68 Capital Equipment Brokers

p.68 Capital Equipment Brokers

p.81 Central Data

p.81 Central Data

p.165 Chrislin Industries

p.165 Chrislin Industries

p.105 Commodore Business Machines

p.105 Commodore Business Machines

p.177 CompuMax

p.177 CompuMax

p.159 Computalker

p.159 Computalker

p.218 Computer Corner

p.218 Computer Corner

p.161 Computer Enterprises

p.161 Computer Enterprises

p.228 Computer Interface Technology

p.228 Computer Interface Technology

p.10 p.11 p.61 Computerland

p.10 p.11 p.61 Computerland

p.190 Computer Mart of NJ & PA

p.190 Computer Mart of NJ & PA

p.228 The Computer Stop

p.228 The Computer Stop

p.228 Computer T-Shirts

p.228 Computer T-Shirts

p.123 p.135 CT Microcomputer

p.123 p.135 CT Microcomputer

p.122 Contract Services Associates

p.122 Contract Services Associates

p.1 p.2 Cromemco

p.1 p.2 Cromemco

p.169 Data Discount Center

p.169 Data Discount Center

p.173 Datafacs

p.173 Datafacs

p.222 dedata edv

p.222 dedata edv

p.222 Digiac Corp

p.222 Digiac Corp

p.156 Digital Pathways

p.156 Digital Pathways

p.66 Digital Research (CA)

p.66 Digital Research (CA)

p.203 Digital Research (TX)

p.203 Digital Research (TX)

p.94 Digital Research & Eng

p.94 Digital Research & Eng

p.14 p.15 Dynabyte

p.14 p.15 Dynabyte

p.225 Electrolabs

p.225 Electrolabs

p.171 Electronic Control Technology

p.171 Electronic Control Technology

p.205 Electronic Sys

p.205 Electronic Sys

p.207 Electronics Warehouse

p.207 Electronics Warehouse

p.146 EMM/CMP

p.146 EMM/CMP

p.165 EMM Semi Inc

p.165 EMM Semi Inc

p.53 Forethought Products

p.53 Forethought Products

p.87 Godbout

p.87 Godbout

(p.CIII) Graham Dorian Enterprises

(p.CIII) Graham Dorian Enterprises

p.161 H & K Computer Components

p.161 H & K Computer Components

p.218 Hamilton Logic Sys

p.218 Hamilton Logic Sys

p.157 DC Hayes

p.157 DC Hayes

p.195 Hobby World

p.195 Hobby World

p.41 Houston Instruments

p.41 Houston Instruments

p.222 Idea Assemblers

p.222 Idea Assemblers

p.117 Info 2000

p.117 Info 2000

p.96 p.97 Integral Data Systems

p.96 p.97 Integral Data Systems

p.190 Integrand

p.190 Integrand

p.209 Integrated Circuits Unltd

p.209 Integrated Circuits Unltd

p.181 International Data Sciences

p.181 International Data Sciences

p.199 Ithaca Audio

p.199 Ithaca Audio

p.222 J & E Electronics

p.222 J & E Electronics

p.197 Jade Company

p.197 Jade Company

p.210 p.211 Jameco Electronics

p.210 p.211 Jameco Electronics

p.83 Jim-Pak

p.83 Jim-Pak

p.228 M W Keith Co

p.228 M W Keith Co

p.137 Lifeboat Associates

p.137 Lifeboat Associates

p.218 The Math Box

p.218 The Math Box

p.218 Mathematical Application Services

p.218 Mathematical Application Services

p.139 Meca

p.139 Meca

p.218 Memory Coop

p.218 Memory Coop

p.67 Micro Diversions

p.67 Micro Diversions

p.136 Micro Mail

p.136 Micro Mail

p.21 Micromation Inc

p.21 Micromation Inc

p.102 p.103 Micropolis

p.102 p.103 Micropolis

p.45 MicroPro International

p.45 MicroPro International

p.95 Micro Source

p.95 Micro Source

p.225 Mikos

p.225 Mikos

p.119 p.144 Mini Micro Mart

p.119 p.144 Mini Micro Mart

p.19 p.91 Morrow/Thinker Toys

p.19 p.91 Morrow/Thinker Toys

p.143 Mountain Hardware

p.143 Mountain Hardware

p.133 mpi

p.133 mpi

p.74 Mullen Computer Boards

p.74 Mullen Computer Boards

p.57 NAIL

p.57 NAIL

p.147 Netronics Research

p.147 Netronics Research

p.152 New England Electronics

p.152 New England Electronics

p.7 p.29 North Star

p.7 p.29 North Star

p.77 Northwest Microcomputer Sys

p.77 Northwest Microcomputer Sys

p.107 Nucleonic Products

p.107 Nucleonic Products

p.30 p.31 p.32 p.33 Ohio Scientific Instruments

p.30 p.31 p.32 p.33 Ohio Scientific Instruments

p.59 OK Machine & Tool

p.59 OK Machine & Tool

p.68 Oliver Advanced Engineering

p.68 Oliver Advanced Engineering

p.173 On Line

p.173 On Line

p.113 Osborne & Associates

p.113 Osborne & Associates

p.218 Owens Associates

p.218 Owens Associates

p.130 Pacific Digital

p.130 Pacific Digital

p.227 Pacific Office Systems

p.227 Pacific Office Systems

p.219 Page Digital

p.219 Page Digital

p.133 PAIA Electronics

p.133 PAIA Electronics

p.141 PanaVise

p.141 PanaVise

p.148 PCE Electronics

p.148 PCE Electronics

p.37 Per Com Data

p.37 Per Com Data

p.88 Personal Software

p.88 Personal Software

p.70 Personal Systems Consulting

p.70 Personal Systems Consulting

p.228 Pet Shack Software House

p.228 Pet Shack Software House

p.175 Pickles & Trout

p.175 Pickles & Trout

p.222 Potter's Programs

p.222 Potter's Programs

p.215 p.217 Priority I

p.215 p.217 Priority I

p.8 p.9 p.10 Processor Technology

p.8 p.9 p.10 Processor Technology

p.155 p.157 Program Design Inc

p.155 p.157 Program Design Inc

p.177 Programmer Software Exchange

p.177 Programmer Software Exchange

p.39 p.218 PRS

p.39 p.218 PRS

p.229 Quest Electronics

p.229 Quest Electronics

p.85 Radio Shack

p.85 Radio Shack

p.89 Rank Peripherals

p.89 Rank Peripherals

p.27 RCA

p.27 RCA

p.214 Rondure Co

p.214 Rondure Co

p.144 Rothenberg Information Sys

p.144 Rothenberg Information Sys

p.187 S-100

p.187 S-100

p.43 p.65 p.72 p.73 Scelbi

p.43 p.65 p.72 p.73 Scelbi

p.183 Scelbi/BYTE Primer

p.183 Scelbi/BYTE Primer

p.35 p.47 p.132 Scientific Research

p.35 p.47 p.132 Scientific Research

p.69 Seattle Computer Products

p.69 Seattle Computer Products

p.127 Michael Shrayer Software

p.127 Michael Shrayer Software

(p.CIV) Shugart

(p.CIV) Shugart

p.23 Signetics Corp

p.23 Signetics Corp

p.175 Ed Smith's Software Works

p.175 Ed Smith's Software Works

p.167 p.169 p.171 p.173 p.175 p.177 p.179 p.181 Smoke Signal Broadcasting

p.167 p.169 p.171 p.173 p.175 p.177 p.179 p.181 Smoke Signal Broadcasting

p.177 SoftSide

p.177 SoftSide

p.179 Software-80

p.179 Software-80

p.71 p.79 SSM

p.71 p.79 SSM

p.221 Solid State Sales

p.221 Solid State Sales

p.5 Soroc

p.5 Soroc

(p.CII) Southwest Technical Products Corp

(p.CII) Southwest Technical Products Corp

p.149 Springer-Verlag

p.149 Springer-Verlag

p.49 Stirling Bekdorf

p.49 Stirling Bekdorf

p.129 Structured Systems Group

p.129 Structured Systems Group

p.228 Sunny International

p.228 Sunny International

p.138 Sybex Inc

p.138 Sybex Inc

p.51 Synchro Sound

p.51 Synchro Sound

p.46 Talos Systems Inc

p.46 Talos Systems Inc

p.55 Tano

p.55 Tano

p.115 Tarbell Electronics

p.115 Tarbell Electronics

p.24 p.25 TASA

p.24 p.25 TASA

p.145 Taylor & Associates

p.145 Taylor & Associates

p.75 Technical Systems Consultants

p.75 Technical Systems Consultants

p.26 Telpar Inc

p.26 Telpar Inc

p.228 Terminal Systems

p.228 Terminal Systems

p.214 3 S Sales

p.214 3 S Sales

p.228 Tora Systems Ltd

p.228 Tora Systems Ltd

p.155 Total Information Services

p.155 Total Information Services

p.152 Trans-Data

p.152 Trans-Data

p.122 TransNet Corp

p.122 TransNet Corp

p.223 TriTek

p.223 TriTek

p.187 US Robotics

p.187 US Robotics

p.218 VR Data Corp

p.218 VR Data Corp

p.227 Wameco

p.227 Wameco

p.228 Worldwide Electronics

p.228 Worldwide Electronics

p.134 p.135 Xitex

p.134 p.135 Xitex