1978 4.06 1980

Vol.4 n°6 june 1979

Vol.4 n°6 june 1979

(byte_1979_06.jpg)

[editor : Carl T. Helmers Jr.] [publisher : Virginia Londoner (Virginia Londner), Gordon R Williamson] [art : Ellen Bingham, Wai Chiu Li, Christine Dixon, Nancy Estle] [cover : Ken Lodding] [nota bene : Some missing pages in archive.org. Full version in vintageapple.org] #Magazine

p.4 In this BYTE

p.4 In this BYTE

#Abstract

This month's cover by Ken Lodding is called "The Turing Test," after the famous test defined by Alan Turing. It was Turing's contention that a computer could be judged as intelligent if a human questioner could not differentiate between a computer in one room and a human being in another. The basis for the cover painting is the Necker cube, an optical illusion where it is unclear which end of the cube is in front. The question here is: Is it the human or the computer circuit connected to the keyboard?"

p.10
p.10

Before discussing the design of A Model of the Brain for Robot Control, it is necessary to define the notation that will be used in the model. James Albus discusses the overall model objectives and the notation used to describe it, drawing on control systems theory. page 10

p.36
p.36

The IEEE Micromouse contest requires that a mechanical "mouse" find its way through a maze. The winner is the mouse that makes it through the maze in the least amount of time. Sandra and Stephen A Allen discuss some of the Simple Maze Traversal Algorithms they and Tony Rossetti used for the Micromouse contest. page 36

p.48
p.48

The types of input ava ilable for your computer are limited only by the imagin ation This month Steve Ciarcia uses Mind Over Matter to control his computer. Find out how to influence your computer using muscle power. page 48

p.60
p.60

Although the official documentation for the Apple II high resolution color graphics package states that the colors violet and green are the only colors besides black and white which may be obtained, adjustment of the television controls allows any pair of complementary colors to be displayed. It is also possible to obtain four colors and black and white with appropriate adjustments. Allen Watson III explains how in his article More Colors for Your Apple. page 60

p.70
p.70

If you enjoy taking your computer system to club meetings or other events, but don't look forward to the attendant wire fiddling and fuss, read A Home for Your Computer by Joseph Dawes. Now you can have a compact computer storage and travel case that doubles as a desk. page 70

p.74
p.74

One of the most interesting applications of your computer is the control of physical devices. Perhaps you've thought of having a robot-like device that your computer could control. James Gupton Jr describes the fun that he and two of his students had when they set out to do just that in Talk to a Turtle. page 74

p.86
p.86

It's not hard to put a bit of artificial intelligence into you r computer system. David Stanfield found a way to make his system search for "food" in a maze he set up. Find out how to do it in My Computer Runs Mazes. page 86

p.100
p.100

William D Johnston develops a general purpose program with the capability to generate a wide variety of more advanced perspective projections. He includes a functional program with great versatility, as well as a number of maps generated by that program. Mr Johnston shows how Computer Generated Maps can be used in satellite communications and many other practical applications. page 100

p.132
p.132

William T Powers has a control theory approach to the simulation of human behavior. However, before we can simulate human behavior in a robot, we must determine what behavior is. William Powers takes a look at behavioral actions as he explores The Nature of Robots. page 132

p.146
p.146

When hand-assembling a program it is useful to have a table summarizing the op codes for the processor. Henry Melton supplies us with a table for The 1802 Op Codes. page 146

p.148
p.148

Keith S Reid-Green continues his History of Computing discussion with a look at The IBM 7070, a second generation computer announced in 1959. page 148

p.152
p.152

Some scientists over the years have argued that a thinking machine can not be built because it would violate the second law of thermodynamics. In Artificial Intelligence and Entropy author R M Kiehn discusses some recently completed work in chemistry that refutes this claim and opens the door once more to the possibility of intelligence in machines. page 152

p.156
p.156

When performing a lot of manipulations with text it is necessary to have the ability to perform editing functions on the file that is being used. If you have a computer system that runs BASIC, you may find that Fred Ruckdeschel's BASIC Text Editor is a very handy tool. page 156

p.166
p.166

Bubble memories are a fairly new form of mass storage medium that is available to the general public. For a quick overview of Texas Instruments' bubble memory product, see A I Halsema's article Bubble Memories. page 166

p.168
p.168

What is a stack? What does LIFO mean? Stacks can be important tools for the computer programmer. Knowing what they are and how to use them will aid you in improving your programming skills. Find out how stacks stack up in T Radhakrishnan and M V Bhat's article, Stacks in Microprocessors. page 168

p.176
p.176

An input command language is often regarded as the least important part of a system. Therefore, some excellent systems are ignored due to the inconvenience encountered when trying to use them. Finite state machine theory is one solution to this problem. For an excellent introduction to the world of finite state machines read G A Van den Bout's article on Designing a Command Language. page 176

p.228
p.228

Have you ever considered using your computer system in a timesharing mode? To discover what is involved in setting up such a system. read Timesharing: Squeezing the Most from Your Micro by Sheldon Linker. page 228

p.234
p.234

Calculating randomness is a very deterministic proposition, especially when pseudorandom number sequences are used. C Brian Honess in his article on Three Types of Pseudorandom Sequences gives some necessary background information on random number calculations and statistical tests of randomness. page 234

p.6 Editorial: On Beginning a New Project

p.6 Editorial: On Beginning a New Project

[author : Carl Helmers] #Edito

Extract : «  This week, I began a new project. It is one which could be begun by many of our readers, that of building a new computer system. In photo 1 we see what my last project turned into after four years of effort at various levels: a 6800 processor with some 28 K of programmable memory, sockets for 8 K of 2708 read only memory, a Sykes 9000 series floppy disk subsystem, a tape subsystem, and communications via parallel ports to two other computers: an Altair and my ALF Products AD-8 music synthesizer. As can be seen by the photo, this system is a packaging nightmare. [...]  »

TABLE OF CONTENTS

Foreground

Foreground

p.10 A MODEL OF THE BRAIN FOR ROBOT CONTROL. Part 1: Defining Notation

p.10 A MODEL OF THE BRAIN FOR ROBOT CONTROL. Part 1: Defining Notation

Defining the mathematical notation for a model of the brain

[author : James Albus] #Mathematics #ArtificialIntelligence #Book

Extract : «  In order to build a computer model of the brain for robot control we must start with a clear understanding of what the brain is for (ie: its primary function). If one examines what most brains do all of the time, and what our own brains do most of the time, it is clear that the brain is not used primarily for thinking.

The brain is first and foremost a control system. All brains, even that of the tiniest insect, control behavior. Some brains can produce very complex behavior, but only the most sophisticated and highly developed brains exhibit the phenomenon of thought. Clearly then, thought is not the central purpose of the brain, but is, rather, an artifact that arises out of the complex computing mechanisms required to generate and control extremely sophisticated behavior.

This implies that would-be brain modelers should first attempt to understand, and if possible, reproduce the control functions and behavior patterns that exist in insects, birds, mammals, and, in particular, primates. Only after these control systems are success- fully modeled can we expect to understand the mechanisms that give rise to intelligence and abstract thought in the human brain. [...]  »

p.49 MIND OVER MATTER: Add Biofeedback Input to Your Computer

p.49 MIND OVER MATTER: Add Biofeedback Input to Your Computer

Use muscle signals to produce computer input

[author : Steve Ciarcia] #Interface #Electronic #Listing #BASIC #DataAcquisition #HealthCare

Extract : «  I wouldn't want you to get the wrong idea from photo 1. I haven't given up computers and taken up telling fortunes. Just consider the photo as a slightly dramatized introduction to a topic we've all heard of, but know so little about: biofeedback. In layman's terms, this simply means having the capability to monitor (in this case electronically) physiological processes.

There are a variety of devices on the market referred to as brain wave monitors. Brain waves are but one of the many sources of energy categorized under biofeedback. Their common relationship is that they are all electrical pulses which run through the body as a result of brain or muscle activity. Nerves and muscles within the body generate electricity by electrochemical action similar to that in a battery.

When we want to lift an arm, the brain sends an electrical pulse to the muscles in the arm. Proper magnitude and duration of the signal result in coordinated activity. The actual energy that is transmitted from the brain is very small: on the order of a few hundred microvolts at the most. The most familiar of these signals is the voltage generated by the pumping of the heart. A graph of this voltage versus time is called an electrocardiogram (abbreviated EKG or ECG). An EKG looks like a spiked waveform, with periodic response equivalent to a heartbeat. Many individual muscle contractions contribute to a frequency spectrum of 0.1 to 100 Hz, with an amplitude of about 5 mV. [...]  »

p.100 COMPUTER GENERATED MAPS, Part 2

p.100 COMPUTER GENERATED MAPS, Part 2

A general purpose perspective projection program

[author : William D Johnston] #Listing #BASIC #Cartography

Extract : «  In part 1 (May 1979 BYTE, page 10) we discussed the fundamental techniques involved in the production of computer generated maps and how to apply those techniques to some common map projections. We also presented several simple programs in BASIC which could be easily implemented in your own system to create maps for a variety of purposes. Nevertheless, these simple programs do have their limitations. In this installment we will develop a map projection program which is only slightly more complex, but far more versatile in what it can accomplish.

One of the most interesting projections mentioned in part 1 was the perspective projection, whereby the Earth is shown exactly as it appears to an observer at some specified height above the surface. Several perspective projections were illustrated, but all of these were simplified examples where the observer (or point of projection) was at infinity. It would be much more useful to have a program which would generate maps of the Earth as it appears from any chosen altitude and over any desired location. Such a program would give enormous flexibility to displays for space war games and other such practical applications as creating map overlays for weather satellite photographs.

Although details of a program to produce this type of projection were not discussed, the reader was encouraged to investigate the subject of perspective (or projective) geometry to see how the task could be accomplished. By this time many of you have, no doubt, learned that the solution is really quite simple. [...]  »

p.132 THE NATURE OF ROBOTS. Part 1: Defining Behavior

p.132 THE NATURE OF ROBOTS. Part 1: Defining Behavior

How can behavior of an organism be described?

[author : William T Powers] #HowItWorks #Listing #BASIC #Robotics

Extract : «  A scientific revolution is just around the corner, and anyone with a personal computer can participate in it. The last time this happened, 250 years ago, the equipment was the homebrew telescope and the subject was astronomy. Now, astronomy belongs just as much to amateurs as to professionals. This time the particular subject matter is human nature and in a broader scope, the nature of all living systems. Some ancient and thoroughly accepted principles are going to be overturned, and the whole direction of scientific investigation of life processes will change.

The key concept behind this revolution is control theory. Control theory has been developing for almost 40 years, and has already been proposed (by Norbert Wiener) as a revolutionary concept. It has not been easy, however, to see just how control theory can be made part of existing scientific approaches although many people have tried. Most of these attempts have tried to wedge control theory into existing patterns of thought. To apply any new idea in such a way, while ignoring the new conceptual scheme made possible, is to deny the full potential of the new idea.

Many life scientists who have tried to use control theory have tried to imitate the engineering approach, dealing with human beings as part of a man-machine system instead of complete control systems in their own right. Others have used control theory directly to make models of human and animal behavior, but have concentrated on minor subsystems, failing to see that the organism as a whole can be dealt with in terms of the same principles. The result has often been a strange mixture of concepts — a patchwork instead of a system. [...]  »

p.176 DESIGNING A COMMAND LANGUAGE

p.176 DESIGNING A COMMAND LANGUAGE

Using theory of finite state machines to design input command language

[author : G A Van den Bout] #Algorithm #Listing #Lex #Programming #Book

Extract : «  Nearly every system, whether it is composed of ten lines of code or ten thousand lines of code, will perform three distinct functions. It will receive input from the user, it will process this input and it will output the results. Of these three functions, the one which undoubtedly receives the least attention from the system designer is the communication from the user of the system to the system itself.

Hours and hours may be spent perfecting a processing algorithm and computing field lengths so that the resulting output can be instantly understood, yet due to the lack of consideration put into the input stage of the system, the user may be forced to plow through a series of questions and answers directed to him by the system. This is a situation which would try the patience of even the most tolerant person. Sometimes a situation even worse than this series of questions may be caused by the designer who is very familiar with the system. In an effort to save time and memory space, the designer may decide to reduce or even entirely omit any prompting by the program. This leaves the decision of what information must be entered to the intuition of the user, or to a system manual which will probably not be around when it is needed.

A good solution to the problem would be a well designed command language which would allow the user to supply all of the information which is needed by the program at one time, in a single command. Then, if any of the required data has not been entered, the computer can prompt the user for the remaining items. [...]  »

Background

Background

p.36 SIMPLE MAZE TRAVERSAL ALGORITHMS

p.36 SIMPLE MAZE TRAVERSAL ALGORITHMS

A contestant of the IEEE Micromouse Contest discusses maze running strategies

[author : Sandra and Stephen A Allen] #Algorithm #Robotics

Extract : «  This article is a discussion of some solutions to the problem of traversing a maze. The algorithms here represent neither an exhaustive nor a high-powered study of the problem, but rather an intuitive approach. The ideas reflect our thought processes and those of Tony Rossetti in our efforts to compete in IEEE Spectrum magazine's ongoing Micromouse contest.

Problem Specification

The IEEE Spectrum's Micromouse Maze contest began time trials last June at the 1978 National Computer Conference in Anaheim CA. A mechanical "mouse" (ie: robot) must find its way under its own power from the entrance of a maze to the exit. Each mouse is given three tries through the maze, with a time limit on each attempt. The mouse with the shortest logged time wins the contest. The solution to the problem, then, is to find the path through the maze that yields the shortest time.

An important consideration in finding a solution is the characteristics of the maze. The corridors are of uniform width. There are only five types of intersections: right angle; left angle; T; U turn; and mousetrap. These are shown in figure 1. There are no cross-intersections, nor are there any king's chambers, which are large vacant areas in the maze. This simplifies the traversal algorithms somewhat. Finally, there are exactly one entrance and one exit on the perimeter of the maze, but not necessarily on opposite sides.

Characteristics of the mouse should also be taken into consideration. It must be completely self-contained, having an on board computer and any required memory. Since the mouse must carry its own battery, available power is a limiting factor. [...]  »

p.60 MORE COLORS FOR YOUR APPLE

p.60 MORE COLORS FOR YOUR APPLE

Any pair of complementary colors can be displayed

[author : Allen Watson III] #Graphics #Listing #BASIC #Book

Extract : «  The sales literature for the Apple II lists the specifications for the high resolution color graphics mode this way:
• 280 horizontal by 192 vertical resolution.
• Four colors: black, white, violet, and green.
• Displays 8 K bytes.

The specifications don't sound all that exciting. The resolution seems about right, but why are there so few colors? And why did they pick green and violet instead of, say, red and blue? Well, as it happens, the colors in the Apple II high resolution graphics can be red and green, or blue and yellow, or almost any two complementary colors you want. What's more, on many color television sets you can obtain as many as four colors along with black and white, as demonstrated by the accompanying photograph.

The classic approach to computer generated color is to generate separate signals for the red, green, and blue inputs of a color monitor. However, color monitors are expensive; it's more economical to use an ordinary color television set. Now instead of generating three simultaneous video signals, we have to generate a composite signal that resembles the standard broadcast signal the television set was designed to receive.

It's not merely that the signal has to be put onto a regular television channel by means of a radio frequency modulator; although that's certainly necessary, there's a lot more to it. Since all the fascinating features of the Apple II high resolution color graphics are the results of the way the Apple II designers solved this problem, let's take a look at just what they did. [...]  »

p.70 A HOME FOR YOUR COMPUTER

p.70 A HOME FOR YOUR COMPUTER

Increase the utility and enjoyability of your equipment with a carefully planned cabinet

[author : Joseph Dawes] #Build

Extract : «  If you're good at woodworking, here's a project that will save you a lot of time and trouble: build a cabinet for your computer! A carefully planned cabinet, as any ham or hi fi buff knows, serves to increase the utility and enjoyability of the equipment inside it.

I started planning my computer system cabinet as soon as I scattered my components around the cabinet I had made for my amateur radio gear. First of all, the cassette unit had to be fastened down: I quickly tired of holding it in place with one hand while unplugging something or changing a cassette. The power supply was constantly running warm and I knew it should be on stilts to increase heat loss. My separate video monitor could have ended up either beside the processor-keyboard cabinet or on top of it, but I quickly decided to reserve the top of the processor cabinet for a desk. The monitor would be beside the processor but angled toward the operating position for improved visibility. The keyboard had to be at a comfortable typing height, somewhere from 28 to 30 inches from the floor. [...]  »

p.74 TALK TO A TURTLE: Build a Computer Controlled Robot

p.74 TALK TO A TURTLE: Build a Computer Controlled Robot

Use your computer to control a mobile "robot"

[author : James A Gupton Jr] #Electronic #Build #Robotics

Extract : «  What do personal computer experimenters do with their microcomputers when computer games lose their appeal and they tire of programming things like, "140 FOR X = 1 to 500: PRINT X: NEXT X " ? The exciting idea of adding a computer controlled robot suggests building your own R2-D2 robot from Star Wars. It might not be wise to start with a project as sophisticated as duplicating R2-D2, but there is a way you can begin a robot project on a smaller scale. It works, too!

The Terrapin Turtle is a fascinating robot project that most experimenters can fully assemble in four hours. It runs forward, backward, turns left or right, blinks light emitting diode eyes, and can talk in a two tone beep. Its shell is mounted on a spindle that engages one of four microswitches. These relay a signal back to the computer over its 10 foot umbilical cord, indicating when the Turtle has run into something from either front, right, left, or rear side. If you direct the Turtle on an exploratory trip around the room, its journey can be recorded by your microcomputer. On completing its journey, the Turtle can actually draw a map of its path using an internal ball point pen. The Terrapin Turtle illustrated in this article was assembled by high school students at the Union County Career Center in North Carolina. The total assembly time was four hours from start to initial test. This article is not intended for use as a construction project, but rather to introduce you to computer controlled robots. [...]  »

p.86 MY COMPUTER RUNS MAZES

p.86 MY COMPUTER RUNS MAZES

Using simple tree searches to reach a goal

[author : David E Stanfield] #Algorithm #Listing #Assembly

Extract : «  Few people have ever had the experience of attempting to trace their way through a real maze, so I'm going to ask you to settle back and allow your imagination plenty of freedom.

The absolute darkness surrounding you is barely broken by the candle you carry in your hand. You see enough to know that you are in a featureless corridor, but how far it extends, you can only guess. Somewhere within this maze is a massive gold plate. If you can find this plate, it will become yours and you will be removed to safety.

You are allowed to leave any kind of signs you wish to mark your trail. You know that any corridor you are in will eventually come to a dead end, but it may have any number of similar corridors branching off it. The overall dimensions of the maze are such that the average person could explore it in its entirety before becoming exhausted, if he or she didn't waste a lot of time and energy going in circles.

What follows is the story of how I created a program that would allow my computer to run through mazes similar to the one I've just described. I've included a general description of how the program operates, instructions for using it, and a complete listing of the program.

I regret that I am unable to give you a motion picture of this program in operation. The best I can do is to explain that I first create a maze as simple or complex as I wish on the screen of my video display. I have the cursor operating in its optional nonblinking mode and it therefore appears to be a solid rectangle. As soon as I turn control over to the program, it begins to maneuver the cursor in and out of the various pathways of the maze. The cursor will dodge up and down, back and forth until it eventually finds its goal. The sight of this mad little cursor zooming around the walls of the maze is absolutely fascinating.

Even if you don't intend to get this program up and running, I invite you to come along and explore some areas I found to be quite interesting. [...]  »

p.146 The 1802 OP CODES

p.146 The 1802 OP CODES

The instruction set of the RCA/Hughes 1802 microprocessor

[author : Henry Melton] #Microprocessor #Programming

Extract : «  The RCA/Hughes 1802 is an 8 bit microprocessor with a small but growing following. Its ease of interface and low CMOS power requirements make it attractive for many small applications. The accompanying chart of op codes for the 1802 illustrates all of the 255 variations. I have used the RCA mnemonics. [...]  »

p.148 THE HISTORY OF COMPUTING: THE IBM 7070

p.148 THE HISTORY OF COMPUTING: THE IBM 7070

The IBM 7070 might have been the start of a new decimal, based computer family

[author : Keith S Reid-Green] #History #Computer

Extract : «  The second computer generation is said to have begun with the advent of the transistor. An equally important advance was the realization that most programmers would soon be programming not in symbolic machine language but in machine independent high level languages. This led hardware designers to build instructions that simplified compiling of programs, such as editing, table lookup and string scanning instructions. Some of these instructions are found in the IBM 7070, announced in 1959.

The 7070, like the 650, was built around a 10 digit signed decimal word. Signs and digits were stored in a two-out-of-five code; five bits were used to represent a digit, of which exactly two were "on". The five bits were assigned values of 0,1,2,3 and 6, so a little fudging had to be followed in order to represent 0. Since 3 can be represented two ways, 0-3 or 1-2, the former was used as the value for 3 and the latter for 0. Alphabetic characters were represented by digit pairs; hence, only five letters could be stored in a word. To distinguish between alphabetic and numeric representation, three signs were allowed: + , — , and @, represented by the codes for 9, 6, and 3, respectively. [...]  »

p.152 ARTIFICIAL INTELLIGENCE AND ENTROPY

p.152 ARTIFICIAL INTELLIGENCE AND ENTROPY

Chemistry, artificial intelligence, and the second law of thermodynamics

[author : R M Kiehn] #ArtificialIntelligence #Book

Extract : «  Although this article is written with a sense of science fiction creativity and speculation, the concepts involved are based on sound ideas that recently won for Ilya Prigogine the 1977 Nobel prize (see reference 1). No longer can it be said that the laws of thermodynamics prohibit the creation of artificial intelligence.

Computer intelligence has long been a hazy dream in many enthusiasts' eyes, but so often that gleam has been glazed over by a rational response from the scientific community: "You can get out of any computer only what you put in. The computer, after all, has to be told what to do. It can't think."

These valid scientific arguments are based, essentially, on the laws of thermodynamics, especially the second law, concerning entropy. The second law says in effect that for all (isolated) systems at or near equilibrium, any process will have a tendency to increase the system's entropy.

Shannon has developed the idea that entropy is related to the inverse of information (see reference 2); so as entropy goes up, information goes down. The second law of thermodynamics seems to demand that this decrease in information shall always happen for mechanical or electrical machines.

The conclusion that machines will never be capable of thinking seems irrefutable. [...]  »

p.156 BASIC TEXT EDITOR

p.156 BASIC TEXT EDITOR

The right tool for the job is often a text editor in BASIC

[author : Fred Ruckdeschel] #Listing #BASIC #DataEntry #Office

Extract : «  Like many an individual who uses computers at work and for personal purposes, I have a tendency to write. At work, this tendency is expressed in the usual ways as memos, project oriented documentation and more general papers. In personal life, this tendency is expressed by the existence of this article and several others which preceded it.

After some considerable chicken scratching it became apparent that my method for collecting ideas and creating a final manuscript was not optimum. The problem became clearly defined when one day I looked up from my note pad only to see my IMSAI arrogantly sleeping while I worked.

The literary approach I had been using was reasonably conventional. First in the procedure was the generation of an outline which contained ideas organized by section. Then a handwritten rough draft was composed in which these thoughts were structured within each section and expanded upon. The draft was then reviewed and changes made until legibility was threatened. If the writing had been for "work" the next step would have been to have the draft retyped. However, as writing for microcomputer journals is a private pursuit, a paid typist is used sparingly. [...]  »

p.166 BUBBLE MEMORIES A Short Tutorial

p.166 BUBBLE MEMORIES A Short Tutorial

A nonvolatile, medium speed, data storage device

[author : A I Halsema] #Memory

Extract : «  In the first quarter of 1977 Texas Instruments announced the availability of a 92,000 bit magnetic bubble memory, making bubble memories a commercial reality ten years after the effect was discovered at Bell Laboratories. The bubble memory provides nonvolatile, medium speed data storage at a price close to that of the floppy disk, but without either moving parts or the problems of reliability that moving parts entail. Future memories will provide storage densities of up to one million bits per chip and faster data rates, as the technology matures. [...]  »

p.168 STACKS IN MICROPROCESSORS

p.168 STACKS IN MICROPROCESSORS

Learn the ups and downs of stacks in your microprocessor

[author : T Radhakrishnan and M V Bhat] #HowItWorks #DataStructure #Programming #Book

Extract : «  The stack or the "last in first out" (LIFO) data structure has become an essential tool in computer systems. There are two major operations associated with this data structure:
PUSH: places a new data item on top of the existing ones in the stack.
POP: removes the topmost element of the stack for succeeding operations.

A spring loaded plate holder in a cafeteria is a good example of a "stack," since addition and removal of items occur at the same end in a last in first out sequence (see figure 1)

When the capacity of a stack is "n" items, then n+1 consecutive PUSH operations will cause the stack to overflow. Similarly, popping an empty stack creates an underflow. Even though stack underflow may not occur intentionally, programmers should account for this condition. Stack overflow is more probable when the stack capacity is not large enough to accommodate all the occurring conditions simultaneously.

Stack size is one of the major design parameters in processor architecture. [...]  »

p.228 TIMESHARING: SQUEEZING THE MOST FROM YOUR MICRO

p.228 TIMESHARING: SQUEEZING THE MOST FROM YOUR MICRO

Microcomputers come of age with timesharing

[author : Sheldon Linker] #OperatingSystem #HowItWorks

Extract : «  Although one normally thinks of timesharing as only working on large computer systems, it is possible to run even on small systems. Many of the newer large scale timesharing systems use virtual memory and swapping, which is not possible or practical on smaller machines. Virtual memory requires mapping hardware (a machine with interruptable instructions, such as an IBM 370). Swapping requires a reasonably fast disk, which will cost at least $2000. What we are left with is an in core system that keeps everything running in real memory at all times. [...]  »

p.234 THREE TYPES OF PSEUDORANDOM SEQUENCES

p.234 THREE TYPES OF PSEUDORANDOM SEQUENCES

Use of random numbers is more than just an everyday occurrence

[author : C Brian Honess] #Listing #BASIC #Mathematics

Extract : «  Random numbers are extensively used in virtually all areas of data processing, from the simplest games for a hobby microprocessor, up to the most complex business and scientific applications. Deterministic games programmed without the benefit of some random parameter soon become boring and easy to "beat," so it would seem that random number generation and testing should be of interest to even the neophyte programmer or computer hacker when trying to get a simple game up and running. Random numbers are used extensively in various business applications. For example, random numbers would be used by an auditor faced with a large number of transactions to audit, and using a sampling technique to only look at a certain percentage of representative transactions. The number of checkout stations at your local discount department store may have been determined by using a mathematical model of the store, wherein the arrival and departure of "customers" was simulated using random numbers. Market research makes extensive use of random numbers, in selecting the people, streets, blocks, households, etc, to interview or to mail questionnaires. A mathematical model can also be "built" of an element, molecule or compound, and a particle introduced at random and collisions counted. Suppose further that you had a photograph of some obscure planet, covered in an extremely irregular way with areas you assumed to be water. You could divide the photograph into small squares, or maybe overlay with a piece of graph paper, and then "take shots" at the grid with a random number generator, wherein the random number would determine the coordinates of the "shot" and you could then tally the number of "hits" and "misses" and thereby determine the number of hits out of the total number of shots, and get an approximation of the percentage of the surface covered by water. [...]  »

Nucleus

Nucleus

p.8 Letters

p.8 Letters

p.129 BYTE News

p.129 BYTE News

p.188 Technical Forum

p.188 Technical Forum

p.194 Nybbles: The Great APL Contest

p.194 Nybbles: The Great APL Contest

p.198 Book Reviews

p.198 Book Reviews

#Book

Extract : «  The BASIC Handbook: An Encyclopedia of the BASIC Computer Language by David A Lien CompuSoft Publishing, San Diego CA, 1978 360 pages, paperback $14.95 [...]

Structured Programming and Problem-Solving with Pascal by Richard B Kieburtz Prentice-Hall, Englewood Cliffs NJ 1978 365 pages paperback $10.95 [...]

Revolution in Miniature by Ernest Braun and Stuart MacDonald Cambridge University Press, 1978 231 pages hardcover $16.95 [...]

How to Program Microcomputers by William Barden Jr Howard W Sams and Co, Indianapolis 1977 256 pages paperback $8.95 [...]  »

p.206 Programming Quickies

p.206 Programming Quickies

p.213 Clubs and Newsletters

p.213 Clubs and Newsletters

#Association

p.133 p.214 BYTE's Bugs

p.133 p.214 BYTE's Bugs

p.218 Languages Forum

p.218 Languages Forum

p.223 Event Queue

p.223 Event Queue

p.133 p.225 BYTEs Bits

p.133 p.225 BYTEs Bits

p.249 Whats New?

p.249 Whats New?

p.286 Unclassified Ads

p.286 Unclassified Ads

p.288 BOMB

p.288 BOMB

p.288 Reader Service

p.288 Reader Service

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

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

p.205 Aaron Associates

p.205 Aaron Associates

p.150 Administrative Systems

p.150 Administrative Systems

p.251 Advanced Computer Products

p.251 Advanced Computer Products

p.245 American Square Computers

p.245 American Square Computers

p.82 p.83 Anadex

p.82 p.83 Anadex

p.19 Apple Computer

p.19 Apple Computer

p.247 apple tv & computing

p.247 apple tv & computing

p.283 ASAP Computer Products Inc

p.283 ASAP Computer Products Inc

p.277 ATV Research

p.277 ATV Research

p.231 Avery Labels

p.231 Avery Labels

p.245 Avionic Enterprises Inc

p.245 Avionic Enterprises Inc

p.101 base 2, inc.

p.101 base 2, inc.

p.175 Basic Time

p.175 Basic Time

p.282 Beckian Enterprises

p.282 Beckian Enterprises

p.277 Beta Business Systems

p.277 Beta Business Systems

p.181 p.200 p.211 Bits Inc

p.181 p.200 p.211 Bits Inc

p.122 Body Peripherals

p.122 Body Peripherals

p.231 Broadcast Computer Systems

p.231 Broadcast Computer Systems

p.163 Business Applications Software

p.163 Business Applications Software

p.215 Buss/Charles Floto

p.215 Buss/Charles Floto

p.217 BYTE Back Issues

p.217 BYTE Back Issues

p.113 p.125 p.133 p.199 p.248 BYTE Books

p.113 p.125 p.133 p.199 p.248 BYTE Books

p.22 p.23 California Computer Systems

p.22 p.23 California Computer Systems

p.259 California Digital

p.259 California Digital

p.222 Cambridge Development Labs

p.222 Cambridge Development Labs

p.111 Central Data

p.111 Central Data

p.12 Chatsworth Data

p.12 Chatsworth Data

p.207 Chrislin Industries

p.207 Chrislin Industries

p.27 "Compucolor" (Div Intelligent Sys)

p.27 "Compucolor" (Div Intelligent Sys)

p.69 Compucolor [Div Intelligent Sys)

p.69 Compucolor [Div Intelligent Sys)

p.141 CompuMax Associates

p.141 CompuMax Associates

p.63 The Computer Cookbook

p.63 The Computer Cookbook

p.276 Computer Factory NY

p.276 Computer Factory NY

p.227 Computer Headwear

p.227 Computer Headwear

p.239 Computer Lab NJ

p.239 Computer Lab NJ

p.8 p.9 p.274 Computerland

p.8 p.9 p.274 Computerland

p.245 Computer Packages Unlimited

p.245 Computer Packages Unlimited

p.21 Computer Mart of NJ & PA

p.21 Computer Mart of NJ & PA

p.277 Computer Service Center

p.277 Computer Service Center

p.235 Computex Corp

p.235 Computex Corp

p.229 Computhink

p.229 Computhink

p.58 p.215 p.233 p.243 CT Micro Computer

p.58 p.215 p.233 p.243 CT Micro Computer

p.218 Covox

p.218 Covox

p.118 Creative Software

p.118 Creative Software

p.1 p.2 Cromemco

p.1 p.2 Cromemco

p.247 Custom Computing

p.247 Custom Computing

p.133 Cutting Edge of Technology

p.133 Cutting Edge of Technology

p.204 Cybernetics Inc

p.204 Cybernetics Inc

p.277 Cybertron

p.277 Cybertron

p.231 Cygol

p.231 Cygol

p.201 Data Discount Center

p.201 Data Discount Center

p.214 Datamation

p.214 Datamation

p.192 DataSearch

p.192 DataSearch

p.237 Data Set Cable Co

p.237 Data Set Cable Co

p.241 DDC Publications

p.241 DDC Publications

p.271 Delta Products

p.271 Delta Products

p.193 Digital Engineering Inc

p.193 Digital Engineering Inc

p.13 Digital Equipment Corp (Book Div.)

p.13 Digital Equipment Corp (Book Div.)

p.171 Digital Pathways

p.171 Digital Pathways

p.154 DRC (CA)

p.154 DRC (CA)

p.275 DRC (TX)

p.275 DRC (TX)

p.66 Eclectic (Div of Tano)

p.66 Eclectic (Div of Tano)

p.280 Electrolabs

p.280 Electrolabs

p.239 Electronic Control Technology

p.239 Electronic Control Technology

p.278 p.279 Electronic Systems

p.278 p.279 Electronic Systems

p.287 Electronics Warehouse

p.287 Electronics Warehouse

p.247 Epoch Data Devices

p.247 Epoch Data Devices

p.54 p.55 Exidy

p.54 p.55 Exidy

p.123 Federal Communications Corp

p.123 Federal Communications Corp

p.205 Forethought Products

p.205 Forethought Products

p.11 GRI

p.11 GRI

p.194 H Geller

p.194 H Geller

p.245 General Scientific Corp

p.245 General Scientific Corp

p.247 Gimix

p.247 Gimix

p.159 Godbout

p.159 Godbout

p.37 Go Forms

p.37 Go Forms

p.247 Gowan Industries

p.247 Gowan Industries

p.247 Graham Dorian

p.247 Graham Dorian

p.81 GRT

p.81 GRT

p.154 H & E Computronics

p.154 H & E Computronics

p.212 Hayden Book Co

p.212 Hayden Book Co

p.202 Hexagon Systems

p.202 Hexagon Systems

p.36 p.255 Hobby World

p.36 p.255 Hobby World

p.285 Hollywood Systems

p.285 Hollywood Systems

p.29 Houston Instruments

p.29 Houston Instruments

p.187 HUH

p.187 HUH

p.213 Independent Business Systems

p.213 Independent Business Systems

p.247 Infinite Inc

p.247 Infinite Inc

p.151 Info 2000

p.151 Info 2000

p.223 Inmac

p.223 Inmac

p.65 Intecolor (Div Intelligent Sys)

p.65 Intecolor (Div Intelligent Sys)

p.189 Integrand

p.189 Integrand

p.241 Interactive Microware Inc

p.241 Interactive Microware Inc

p.59 Internatinal Peripheral Systems

p.59 Internatinal Peripheral Systems

p.281 Ithaca Audio

p.281 Ithaca Audio

p.272 p.273 Jade Co

p.272 p.273 Jade Co

p.256 p.257 Jameco

p.256 p.257 Jameco

p.217 p.231 Key Supply Co

p.217 p.231 Key Supply Co

p.235 Leedex Corp

p.235 Leedex Corp

p.120 p.121 Lifeboat Associates

p.120 p.121 Lifeboat Associates

p.97 Mad Hatter Software

p.97 Mad Hatter Software

p.247 The Mail Mart

p.247 The Mail Mart

p.221 Marketline Systems

p.221 Marketline Systems

p.103 Marinchip Systems

p.103 Marinchip Systems

p.105 Maxwell Data Products

p.105 Maxwell Data Products

p.25 McGraw Hill Book Co

p.25 McGraw Hill Book Co

p.173 Measurement Sys & Controls

p.173 Measurement Sys & Controls

p.231 Measurement Sys & Controls

p.231 Measurement Sys & Controls

p.169 Micro Ap

p.169 Micro Ap

p.245 Micro Architect

p.245 Micro Architect

p.147 Microcomputer Technology

p.147 Microcomputer Technology

p.189 MicroDaSys

p.189 MicroDaSys

p.35 Micro Diversions

p.35 Micro Diversions

p.113 Micro Focus LTD.

p.113 Micro Focus LTD.

p.72 Micromail

p.72 Micromail

p.216 Micro Mike's

p.216 Micro Mike's

p.190 p.191 Micropolis

p.190 p.191 Micropolis

p.48 Micro Pro International

p.48 Micro Pro International

p.277 Microsette

p.277 Microsette

p.195 Microsoft

p.195 Microsoft

p.241 Micro Software (CAI)

p.241 Micro Software (CAI)

p.206 The Micro Works

p.206 The Micro Works

p.139 Micro World

p.139 Micro World

p.245 Miken Optical

p.245 Miken Optical

p.280 Mikos

p.280 Mikos

p.220 Mini Computer Suppliers

p.220 Mini Computer Suppliers

p.39 (p.CIII) Morrow/Thinker Toys

p.39 (p.CIII) Morrow/Thinker Toys

p.226 Mountain Hardware

p.226 Mountain Hardware

p.107 National Small Computer Show

p.107 National Small Computer Show

p.155 p.165 NEECO

p.155 p.165 NEECO

p.225 Netronics

p.225 Netronics

p.263 Newman Computer Exchange

p.263 Newman Computer Exchange

p.45 North Star Computer

p.45 North Star Computer

p.109 Ohio Micro Systems

p.109 Ohio Micro Systems

p.33 onComputing

p.33 onComputing

p.277 On Line

p.277 On Line

p.217 Oregon Software

p.217 Oregon Software

p.183 Osborne & Associates

p.183 Osborne & Associates

p.57 p.89 (p.CIV) OSI

p.57 p.89 (p.CIV) OSI

p.203 Owens & Associates

p.203 Owens & Associates

p.231 Pacific Exchanges

p.231 Pacific Exchanges

p.284 Pacific Office Systems

p.284 Pacific Office Systems

p.221 PAIA

p.221 PAIA

p.116 p.117 Per Com Data

p.116 p.117 Per Com Data

p.253 Per Com Data

p.253 Per Com Data

p.142 p.143 Personal Software Inc

p.142 p.143 Personal Software Inc

p.227 Potomac Micro Magic

p.227 Potomac Micro Magic

p.277 Potters Programs

p.277 Potters Programs

p.266 p.267 p.268 Priority I

p.266 p.267 p.268 Priority I

p.94 p.95 Processor Technology

p.94 p.95 Processor Technology

p.209 Progrem Design Inc

p.209 Progrem Design Inc

p.46 p.47 PRS

p.46 p.47 PRS

p.163 Quality Software

p.163 Quality Software

p.281 Quest Electronics

p.281 Quest Electronics

p.192 RACET Computes

p.192 RACET Computes

p.277 Radio Shack Authorized Sales Center

p.277 Radio Shack Authorized Sales Center

p.85 RCA

p.85 RCA

p.67 Realty Software

p.67 Realty Software

p.245 The Recreational Programmer

p.245 The Recreational Programmer

p.233 p.243 RNB

p.233 p.243 RNB

p.203 S-100 Inc

p.203 S-100 Inc

p.210 Sara Tech Computers

p.210 Sara Tech Computers

p.237 S C Digital

p.237 S C Digital

p.219 Scelbi Computer Consulting Inc

p.219 Scelbi Computer Consulting Inc

p.115 Scientific Research

p.115 Scientific Research

p.185 Michael Shrayor Software

p.185 Michael Shrayor Software

p.6 p.7 Shugart

p.6 p.7 Shugart

p.215 Sierra Cybernetic Systems

p.215 Sierra Cybernetic Systems

p.194 Ed Smith's Software Works

p.194 Ed Smith's Software Works

p.73 Smoke Signal Broadcasting

p.73 Smoke Signal Broadcasting

p.215 Software Development & Training

p.215 Software Development & Training

p.265 Solid State Sales

p.265 Solid State Sales

(p.CII) Southwest Technical Products Corp

(p.CII) Southwest Technical Products Corp

p.131 Speakeasy Software

p.131 Speakeasy Software

p.77 SSM

p.77 SSM

p.124 Stirling/Bekdorf

p.124 Stirling/Bekdorf

p.5 Structured Systems Group

p.5 Structured Systems Group

p.245 Sunflex Co Inc

p.245 Sunflex Co Inc

p.2 Sunny International

p.2 Sunny International

p.202 SuperSoft

p.202 SuperSoft

p.157 Sybex Inc

p.157 Sybex Inc

p.43 Synchro Sound

p.43 Synchro Sound

p.135 Tarbell Electronics

p.135 Tarbell Electronics

p.137 Technical Systems Consultants

p.137 Technical Systems Consultants

p.237 Technology Systems South

p.237 Technology Systems South

p.235 Terrapin

p.235 Terrapin

p.31 p.179 Texas Instruments

p.31 p.179 Texas Instruments

p.91 3/M Company

p.91 3/M Company

p.231 Tora Systems Limited

p.231 Tora Systems Limited

p.204 Trans Data

p.204 Trans Data

p.197 TRS-80 Software Exchange

p.197 TRS-80 Software Exchange

p.241 TSA Software

p.241 TSA Software

p.245 Ucatan

p.245 Ucatan

p.247 US Brokers Co (Div. CM Corp)

p.247 US Brokers Co (Div. CM Corp)

p.119 US Robotics

p.119 US Robotics

p.51 Vector Electronics

p.51 Vector Electronics

p.161 p.201 Vista

p.161 p.201 Vista

p.277 V M Professional Application Software

p.277 V M Professional Application Software

p.282 VR Data

p.282 VR Data

p.284 Wameco

p.284 Wameco

p.32 Western Digital Corp

p.32 Western Digital Corp

p.231 Wintek

p.231 Wintek

p.231 Worldwide Electronics

p.231 Worldwide Electronics

p.217 XComp

p.217 XComp

p.239 Xitex

p.239 Xitex

p.247 ZS Systems

p.247 ZS Systems