Appendix 1 UNDERSTANDING MICROCOMPUTER BUSES

A1.1 WHAT IS A MICROCOMPUTER ? for example, is connected to the microcomputer bus via a parallel or serial interface, which takes the The main 'building blocks' of a microcomputer form of a board connected to the bus, see Fig. 50. comprise the CPU, internal memory and I/O, see This book features two types of bus structure: the Fig. 49. Apple II family and the IBM PC, but there are many These 'building blocks' pass data to one another others. Each bus would originally have been designed under the control of the CPU via a data highway by the manufacturer in question, but called the bus. In a typical microcomputer each of because certain have become very popu­ these building blocks will be realised as one or lar, their buses have become de facto industry more microcomputer boards. Each peripheral (I/O), standards. This is certainly true for the Apple II and

Microcomputer 1------, I CPU I I I I Control block I Data from Data and control external devices I I to external devices (eg. keyboards, (eg. , visual disk drives) I display unit) I I I I I I I Memo~ I L ~

Fig.49 The main internal units of the microcomputer

User's Interface Motor Solenoid C)CI) o~ valve -Q)co> ~~

Processors Memo~ Digital 110 Analog 110 Peripheral Industrial 1/0 8088 RAM Input ports DACs interface 8086 ROM Output ports ADCs 6502 280 etc.

Fig. 50 The , with its power, data and microcomputer system can be assembled by adding address and control lines. A special purpose the right combination of boards

239 Expanding and Networking Microcomputers

IBM PC. In other cases, bus structures have been infrequent, or important peripherals, to secure the adopted by the US Institute of Electronic and attention of the CPU. Electrical Engineers (IEEE),to be redefined and firmly Some microcomputer buses will allow more than established as an industry standard. Typical examples one device to gain control of the bus lines. A system are the 5-100 bus (lEEE-696), the GPIB bus (lEEE­ may have more than one processor or variety of 488) and the Multibus (lEEE-795). intelligent cards, such as disk controllers, on the A bus is a way of connecting boards together. It bus. Any device that is capable of controlling bus has a physical (hardware) and procedural () operation is usually referred to as a bus master and part and we have seen that for the Apple II and IBM passive devices on the bus, such as memory, I/O PC there are over 300 boards available for each ports etc., are called slaves. A system will always machine which, either singularly or in combination, have at least one master and one slave, and it may can give these microcomputers very specific capabili­ have several of each. ties. These boards will conform rigidly to the physical and electrical specifications laid down by Apple and A1.3 SYSTEM EXPANSION IBM respectively for their bus structure. Within the microcomputer several types of buses With the Apple II and the IBM PC expansion occurs are used to transmit power, data, address and via the . This is a large printed-circuit control signals. Collectively they are referred to as board that distributes bus signals to connectors the system bus, see Fig. 50. which mate with system boards. The appeal of both these microcomputers is that it is quite easy to A1.2 BUS STRUCTURES enhance their performance by slotting in a new board. It is now fashionable to refer to this as open system architecture, although when the Apple II first A1.2.1 Address Lines came out in 1977, several add-in boards were A bus carries electrical signals to and from the required before the machine could begin to do and these consist of address, data anything useful. However, both as a result of this and control information. The address lines are used 'openness' and the ease of access to the Apple by the processor to indicate to memory and other motherboard, many small engineering firms were peripherals the location with which it wishes to encouraged to developed special purpose boards. communicate. 8 bit processors such as the 6502 This increased the appeal of the Apple, a lesson that used in the Apple, or the Z-80, have 16 address IBM had learnt when the PC was launched some lines, generally labelled AO-A15, that are divided into five years later. two 8 bit bytes. AO-A7 comprise the low-address Apart from 5-100 based systems, most other byte and lines A8-A15 form the high address byte. microcomputers do not have the expansion capability Thus the maximum addressing capability of an 8 bit of the Apple II and IBM PC. Indeed, with the latest processor is 216 bits, or 65536 bits expressed as 64 generation of Apple products - the Lisa and Kb. Not all the address lines may be used by any , there has been a deliberate move away one board. The 8086 and the Motorola 68000 from this approach. Both the Apple and IBM PC are 16 bit processors that may contain up to 24 have well designed power supplies which produce address lines. the necessary voltages and provide the extra current required when a new board is added. Power A1.2.2 Data Lines requirement is a critical factor in a system that is The data lines, usually designated 00-07 on 8 bit being expanded. buses and 00-015 on 16 bit buses, carry instructions and data between the processor and all the A1.4 DEVELOPMENT OF MICROCOMPUTER BUSES peripherals, including memory. All processors have bidirectional data lines which carry information both into and out of the processor. The direction of A1.4.1 The S-100/IEEE-696 Bus information flow on these lines is usually under In 1974 a series of articles appeared in the processor control. Most buses, with the notable U5 magazine Radio Electronics which described exception of 5-100 and the Digital Group buses, construction plans for a computer called the Mark maintain bidirectional data lines. The 5-100 splits 8. This was based on the now obsolete Intel the data lines into eight data input and eight data microprocessor, the 8008, and it represented the output lines. The Digital Group bus splits them into first time a computer had become available to anyone eight memory-data in, eight memory-data out, eight other than an employee of a large corporation. I/O in, eight I/O out. Earlier in the year that the Mark 8 article had appeared, Intel announced the 8080, an enhanced A1.2.3 Control Lines version of the 8008 processor. Les Soloman, editor The control lines coordinate the operation of the of the rival magazine Popular Electronics also decided system components connected by the bus. Most to publish a series of articles on microcomputer buses include a master clock line that indicates to construction, but based on the 8080. It was arranged peripherals that the address placed on the bus is that the kit would be sold by a small electronics settled and valid. company, Micro Instrumentation and Telemetry The direction of the flow of data on the data lines Systems (MITS), and the product was to be called is determined by one or more processor signals. the . The first Altair article appeared in Most buses include reset lines whilst interrupt inputs the January 1975 issue of Popular Electronics and are common to all systems. These inputs allow the kit was an instant success. 240 Appendix 1

108 The Altair was built around a motherboard with I I I I I I I I add-in boards interfacing to the system bus. MITS I I I I called its bus the Altair bus and the designers chose Back- I I I I """""---- plane ---- I I I I a connector for the motherboard that had 100 pins, buses because they were readily available at a discounted Local Area Networks price. The design was largely ad hoc, mainly because ,...... there was no prior experience, but at least it worked. II I I I I I I Success created competition and another company, II IEEE-488 I I I I I II I IMSAI, launched an improved version of the Altair, I but fortunately it used the same bus design. ----+ I I ~----t---~---- I I I I I I In a relatively short period a number of firms I I I I I I were producing Altair look-alikes and other names I I I I I I such as Cromemco, Polymorphic and Processor RS23~C ~---~---~---- e----t---t I I I I I Technology were not uncommon at the time. I I I II I A degree of rationalisation was required and one I I I I I I of the directors of Cromemco, Roger Millan, decided ----+----t---~---~---~~--~---- I I I II I a generic name was needed for the bus. He proposed I I I I I I to call it the Standard 100 Bus in view of the pin I I I I I I I I I I I I I count, or S-100 for short, and the name caught on. 4 For the most part the manufacturers of S­ 10' 10 100 compatible products adhered to the bus/pin Range/metres arrangements quite closely but the relative timings of the various bus signals varied considerably from Fig. 51 Performance characteristics of the different one manufacturer to the next. Boards were being types of interconnect systems used with microcom­ produced which were not bus compatible and further puters standardisation was required. It was suggested that the design aspects of the S­ 100 should be submitted to the IEEE for approval as a standard, and the number 696 was assigned to the runs MS-DOS 2·0 and Xenix, and is capable of task. The working group prepared a series of drafts addressing up to 16 Mb of RAM. Its performance is which included a proposal for allowing 16 bit close to some other manufacturer's mainframe processors and memory to use the bus as well as 8 computers. However, most S-100 machines do not bit processors. A gestation period of four years was have the graphics capability of the IBM PC, which required, from 1979 to 1982, for the draft to become has a much larger software base, more graphics­ a standard, the IEEE-696. oriented programs, and an ever growing range of Thus the S-100 bus has survived the transition supporting products. from 8 to 16 bit processors and is again one of the leading high-performance buses. It supports both 8 and 16 bit processors, up to 16 Mb of memory, and A1.5 COMPUTER SYSTEMS AND BUS HIERARCHY 64 K I/O ports. Most of the popular are available for the bus, and over 100 manufacturers A1.5.1 Bus Hierarchies produce more than 500 different boards for the S­ Bus systems may be conveniently classified by their 100 bus. range and speed, see Fig. 51. It was mentioned Indeed, the bus has never been more popular and earlier on that a bus is a data highway that connects it has found a new lease of life in industrial control two or more digital system elements, whether these where there is a ready market for purpose built devices sit on the backplane of a microcomputer or microcomputer systems. are attached via peripheral interfaces. Thus the concept of a data bus extends from a backplane for A1.4.2 MS-DOS and the S-100 Bus board interconnection, to an RS232C connection, The MS-DOS operating system was actually and up to a . developed in the S-100 bus. In 1979 Seattle Computer Products (SCP) began designing CPU boards with A 1.5.1. 1 Level 0 buses the new Intel 8086 microprocessor. At that time The add-in board for the IBM PC or Apple II is a there was no commercially available operating Level 0 bus, and in its most sophisticated form with system for the 8086 and although Digital Research on-board CPU, ROM and RAM, it becomes a single­ were developing CP/M-86, SCP decided to go ahead board-computer (SBC). Intel refer to the Level 0 bus with their own. as the Local Bus, and their boards are designed to The first versions of QDOS, the 'Quick and Dirty remove processing overheads from the master CPU, Operating System' were released in 1980, and served see Fig. 52. mainly to support Seattle's 8086 board. Seattle's marketing agreement with Microsoft, which sub­ A 1.5.1.2 Level 1 buses sequently grew into an assignment of exclusive The Level 1 bus is the backplane in the microcom­ rights, and the renaming of QDOS to MS-DOS, are puter. It employs a motherboard to which add-in now part of microcomputing history. boards (Level 0) are connected. The backplane bus Seattle Computer currently produce the Gazelle, differs from component-level buses in that it serves an S-100 based computer which is based on the 10 as the communications device between boards tied MHz Intel 8086 CPU. This has an 18 slot motherboard, together over a common set of connecting lines. 241 E:E xpanding and Networking Microcomputers

RS232C Serial bus Level 4

Graphics display Unmapped parallel bus (GPIB) Level 3B Mapped parallel bus Level3A /

Level 0 Component-level bus

Sys tem bus Level 2

Fig. 52 Hierarchical structure of bus systems. The add-in board has the lowest level A1.5.1.3 Level 2 buses into the microcomputer, it tends to stay there, whilst The Level 2, or system bus, represents a global view software is only called into use when required. A of the microprocessor's parallel bus system, see Fig. board takes up valuable space inside the microcom- 52. The system bus can be a single backplane, but puter and the Level 1 bus must support all types of usually it consists of separate sections such as one board combinations. or more backplanes, bus repeaters, linking cables The design of a Level 1 bus must take into account and termination networks. the following points: The length of the system bus is an important Timing of data flows along the bus to prevent design consideration because crosstalk can become collisions with other events; an issue, and the bus needs to be shielded to Processor independence; the best master must not prevent this. conflict with slave devices in the system during data transfers; A 1.5.1.4 Level 3 buses Length, prioritization and arbitration; bus length is High speed peripherals such as disks or graphic related to bus level and is determined by such displays are connected in parallel to the system bus. factors as power, signal response times and ringing. Level 3, or parallel interface buses, may be either Prioritisation is the method by which a device mapped or unmapped. The best known and most gets control of the bus. For example, with S-100 widely implemented unmapped parallel interface is systems the priority scheme depends on the position the IEEE-488 (see Appendix A3) and it represents of the cards in relation to the microprocessor, the one of the most cost effective ways of interfacing adjacent board having the highest priority. Arbitration instruments to a microcomputer. is the method by which a slave board gains control of the system bus and prevents the master from A 1.5.1.6 Level 4 buses monopolising the bus. Serial interfaces, such as the RS232C or RS422, perform bus type functions and also are used to connect in a networking environment. The most A1.6 BUS STANDARDS common application of serial buses is to connect devices such as printers and terminals to the host A1.6.1 The Bus Market system. Serial buses are the largest devices in the There are several bus standards, each aim at bus hierarchy and generally operate more slowly particular market segments. Business microcomputer than the other bus levels, see Chapter 28. manufacturers, apart from S-100 based machines, normally develop their own proprietary buses such A1.5.2 Bus Design Considerations as those for the Apple and IBM PC family. S-100 The design of the backplane (Level 1) bus in a buses are also used in industrial based applications, microcomputer largely determines system flex ibility. along with STD, Multibus and VME. IEEE-488 buses Both the IBM PC and Apple II have encouraged are mainly used for data capture and control users to mix and match add- in boards in much the applications where high data rates are not a prime same way that software is put together. The factor. difference is that once a board has been inserted The various bus standards are supported by 242 Appendix 1

manufacturers who produce boards based on these Arbitration schemes: A parallel, or predetermined, standards and sold to system builders. One of the priority technique can be employed to resolve major features of bus-based systems is their disputes among as many as 16 masters in contention modularity, and the system designer is able to use for use of the bus. This technique requires a priority­ these as off-the-shelf building blocks to create encoder chip such as a 74148, and a companion whatever system is needed, see Fig. 50. Even the priority-decoder chip, like a 74S138, supplied exter­ business user who enhances his PC with one or nally from the bus. more boards is, in effect, a system builder. Contention for the bus among master modules The most widely used buses are: can also be arbitrated using a serial priority The Multibus, from Intel, which is now covered by technique. In this scheme, the priority input line the IEEE 796 specification (BPRN) of the highest-priority module is tied to The STD bus, developed jointly by Pro-Log and ground, the priority output line (BPRO) of the next­ Mostek highest master is connected to the BPRN of the next The S-100 bus, originally for personal computers module in importance, and so on, in a daisy-chain and now covered by the IEEE-696 standard fashion. However, usually no more than three The Versabus from Motorola masters are tied together in a serial priority arbitration The VME bus, developed jointly by Motorola, scheme, as excessive delays would occur. Signetics-Philips and Mostek In either case, an exchange of bus control from Buses designed by traditional minicomputer manu­ one master to another begins when a master sends facturers, such as Digital Equipment Corp's Q-bus a request, but the original master must first complete for the LSI-II its operation if one is in progress. Upon completion, The Apple II and IBM PC buses. These microcompu­ that master sets a Busy line to an inactive state, ters were initially aimed at the education and allowing control to exchange between the master business markets bus, as we have seen, with add-in modules. However, it is possible for a master to boards can be configured for a wide range of retain control of the bus by activating a bus override applications. line. The following sections give a brief summary of the salient features of the above bus standards and Interrupt structure: There are eight levels of inter­ their associated boards. The GPIB (lEEE-488) bus is rupts available on the Multibus and two interrupt treated fully in Appendix A3, and the RS232C schemes: non-bus-vectored and bus-vectored inter­ standard is dealt with in Chapter 28. rupts. Nonbus-vectored interrupts need not be acknowledged by uninvolved masters; these masters A1.7 MULTIBUS (lEEE-796) simply continue with their operations. However, bus-vectored interrupts also transfer Type of bus: Asynchronous, nonmultiplexed. vector addresses on the bus address lines. A master in control of the bus responds to an interrupt with Data-path width: The Multibus carries 16 bit data, an acknowledgment, which freezes the state of which can be transferred at a maximum rate of 5 the interrupt logic on all slave modules pending MHz. resolution of the priority. Also, the master puts the address associated with the highest priority of the Address-field width: Up to 24 bit addressing is active interrupt Request line onto the bus's address supported; four of the 24 lines used for addresses line, and depending on the processor it uses, the are located at an expansion connector, designated master then generates one or two more Interrupt Acknowledge signals. If the master generates only P2 • one more acknowledgment, the control logic on the bus slave transmits an 8 bit pointer via the bus data Loads supported: 16. lines to find the of the required interrupt service routine. If the bus master generates Signal-line length: 15 inches. two additional acknowledgment signals, the slave

Supply-line and signal specifications: In all, 14 lines ..------12in. -----·---.1 are assigned to carry supplies of ±5 and ±12 V on the primary, or P" connector; another 12 lines on o O' the P2 expansion connector carry power from ±5 and ±12 V batteries in case of line failures, as well as supplies of ±15 V. A line, designated ACLO, on the P2, connector can be used to signal a drop in ac line power at the 675in. system power-supply input. Other lines work in concert with the ACLO line to switch a system over to batteries in the event of a power-line aberration. Most signals on the bus are at TTL levels, active low. I ? Multiple processors: The Multibus supports up to I~~------16 modules that are capable of requesting and taking 7-34in. ------.-. control of the bus. Fig. 53 Multibus board

243 Expanding and Networking Microcomputers directly puts a 16-bit vector on the bus data lines, f1 1 which are used to service the interrupt. i Backplane connector: There are two connectors I, required for boards using the Multibus architecture. i Centre line of pin 50 The first connector has 86 pins; the second, 60. Of the 60 on the P2 connectors, two have no functions assigned, see Fig. 53.

O·125in. A1.8 S-100 BUS (lEEE-696) J r-1 • -4------9.925in. Type of bus: Asynchronous, nonmultiplexed. Fig. 54 5-100 board Data-path width: The 5-100 bus handles 8 and 16 bit data transfers. Two 8 bit buses are used unidirectionally to serve the transfer of byte-wide Interrupt structure: There are eight priority levels data. When ganged, they form a 16 bit bidirectional available for interrupts. bus. Two signal lines control the ganging of the two 8 bit buses. Backplane connector: The 5-100 bus incorporates 100 lines, includinq the 16 data lines, 24 address Address-field width: All master modules on the lines, eight status lines, five controller output lines, bus must assert at least 16 address bits but can six controller input lines, eight DMA control lines, assert 24. In addition, along with an address, the six vectored interrupt lines, and 20 signal lines for modules must generate status signals that indicate utilities. Three of the utility lines are set aside for the nature of the bus cycle in progress and qualify user applications and five more are open, reserved the nature of the address on the address bus. There for future specification, see Fig. 54. are eight status signals, including Memory Read, Op-Code Fetch, lID, Write Cycle, Interrupt Acknowl­ edge, Halt Acknowledge, and Data Transfer Request. A1.9 APPLE 11+ PERIPHERAL 1/0 BUS

Loads supported: Up to 22 devices. Type of bus: Synchronous, nonmultiplexed. The Signal-line length: Up to 25 inches. Apple II bus handles an eight-slot backplane, which accommodates a board, Fig. 55(a) holding RAM or Supply line and signal specifications: Nine lines ROM for system expansion in the first slot and distribute power: five ground lines, two lines to intelligent peripheral boards in the remaining seven. supply 8 V, and one line each for +16 and -16 V. Alternatively, the first slot can be used for bus extension. The Apple lie has seven expansion slots, Multiple processors: Up to 16 modules that can see Appendix 4. request control of the bus can be supported. Data-path width: 8 bits. Arbitration schemes: A single system controller arbitrates requests from master modules seeking Address-field width: The bus's eight board slots control of the bus via the Hold Request line. The are served by 16 address lines. A separate device priority of modules requesting use of the bus is selection line informs a particular board that it indicated with four lines. The system controller specifically is being addressed by the system's 6502 informs the module requesting service that has the CPU. highest priority when the bus is available by Each of the peripheral board slots, with the providing a Hold Acknowledge signal on another exception of the first, has capacity reserved for one line. 256-byte page of ROM or RAM for on-board programs Four additional lines are used to set the timing or subroutines. Besides this 256-byte ROM space, 2 and movement of data during any bus cycle. One Kb of additional expansion ROM space is available indicates the beginning of a new bus cycle. Another for each of the boards, dedicated exclusively to the indicates that an address and a status signal can be driver routines contained in the 256-byte ROM sampled from the bus. A Read Strobe line gates spaces. In addition, each of the eight slots has eight data from an addressed slave onto the data bus, locations in the host's RAM reserved for use as and a Write Strobe line gates data from the bus into scratchpad memories. A line on the bus connects a slave. boards for DMA operation in the order of a set Four lines allow slave modules to match communi­ priority; a second line accommodates a daisy­ cations from master modules to the particular chained interrupt service; and a third line sends requirements of each slave. Two lines carry interrupt non-maskable interrupts to the Apple CPU. requests to the system controller; one is a nonmaska­ ble interrupt line. Loads supported: Limited to slots on backplane. 244 Appendix 1 l I~O·75in. Data-path width: 8 bits. Address-field width: There are 20 address lines bused to the five slots for boards, in addition to lines to select memory or I/O read or write, a clock T and lines for DMA and interrupt control. 2·75in. Apple 111/0peripheral card Loads supported: Five cards, three of which can l.~ ~ request control of the bus. __ Signal-line length: Within the constraints of the i~ 7in. five-slot backplane. Fig. 55(a) Apple II peripheral board Supply-line and signal specifications: Lines bring supplies of ±5 V and ±12 V to the backplane. o Signals are at TTL levels, active high Multiple processors: The IBM 's GNO 26 25 -5V 8088 CPU works with a companion Intel DMA DMAln 27 24 DMAOut controller chip that provides three channels of bus­ INTln 28 23 INTOut request arbitration for intelligent boards on the NMI 29 22 OMA IRQ 30 21 ROY peripheral bus. Three boards can issue requests for RES 31 20 1/0 Strobe use of the bus. INH 32 19 NC -12V 33 18 R/W -5V 34 17 A1S Arbitration scheme: 8237 DMA controller NC 35 16 A14 incorporates the priority logic to arbitrate requests 7M 36 15 A13 for use of the bus from as many as three master Q3 37 14 A12 modules on the expansion backplane. The chip 01 38 13 All User 1 39 12 Alo also generates read and write control signals, as 00 40 11 As appropriate, to direct the flow of data to or from the Device Select 41 10 AB peripheral bus control boards. Furthermore, it D 42 9 A7 supports block data transfers as long as a board D 43 8 As D 44 7 As maintains its request for control of the bus. D 45 6 AA D 46 5 A3 D 47 4 A2 Interrupt structure: The bus provides for six inter­ D 48 3 Al rupt priority levels. Interrupts are managed by D 49 2 AD another Intel chip, the 8259. A line is available to -12V 50 1 I/0Seleet carry nonmaskable interrupts for the host CPU. o Backplane connector: The five connectors resident on the expansion backplane of the IBM personal computer have 62 positions, (see Fig. 56(b)). Fig. 55(b) Apple II backplane connector

Signal-line length: Confined to Apple II backplane. 3 9 In GNO I/OCHCK _r- ---1-1 RESETORV 07 -5V 0.. 071n Supply-line and signal specifications: Lines supply IRo. Ds -5Vac D. ±5 and ± 12 V. The total power drawn by any ORQz -OJ -12V -02 T Reserved- 0, board can not exceed 60 W. TTL signals are -12V Do GNO 1/0CHROY accommodated. MEMW AEN MEMR A,. lOW A,. 10E A17 Backplane connector: The connectors used on the OACKJ -A,. ORQ, A.s 13210 OACK, A,. Apple II backplane to support the peripheral I/O ORQ, -A'J OACKo A12 cards have 50 contacts set on 0·1 inches centres, 25 ClK An IRQ7 A,o contacts per board side, see Fig. 55(b). IRa. As IRQs As IRQ. A7 IRQ, As OACI<2 As TC A. A1.10 IBM PERSONAL COMPUTER I/O BUS ALE ­ A3 -5V A2 OSC ­ A, GNO Ao \--_----{ I Component side f.---- 421n Type of bus: Synchronous, nonmultiplexed. The 1/0 channel slot IBM personal computer bus handles a five-slot backplane that holds boards (see Fig 56(a)) for Fig. 56(a) IBM PC card Fig 56(b) IBM PC additional system memory or intelligent functions. backplate connector

245 Appendix 2 IBM's TOKEN PASSING RING AND THE PC NETWORK

A2.1 THE TOKEN PASSING RING IBM's SNA network systems with token rings. Therefore the is marketable to all types of In March 1982 IBM submitted to the IEEE Project IBM users. 802 a description for a token ring. This has become Although it is apparently still a long while before encapsulated in Working Group 802·5's proposals IBM will make its token ring available, the company (see Appendix 8). The IEEE submission was based has made several moves in preparation. Amongst on the 'Zurich Ring' presented by IBM in Florence, these is an agreement with in April 1982. Since then there have been several similar 1982 for the joint development of components to presentations, and at the Telecom 83 conferencel support such a network. More recently IBM exhibition in October 1983, IBM demonstrated the announced the cabling system for the network, concept in action. allowing IBM users to prepare their sites ready for It was widely expected that the ring would become it. available in 1984/5. But in May 1984, IBM announced There is little doubt that when IBM's token passing that its token-passing ring Local Area Network would ring Local Area Network does become available, it first be available in the USA in 1986/7. This has will rearrange the local network market. It may also been received with dismay. In the shorter term, the rearrange the whole computer market. company is offering its PC Cluster low power network for personal computers (see table, Chapter 30). So far this product has been regarded with little A2.2 IBM's PC NETWORK interest due to its low speed data transfer capabilities. However, with IBM's marketing force behind it, PC Possibly as an interim measure prior to the delivery Cluster should carve itself a reasonable niche in the of its token-ring Cabling System, IBM in August micronets market. 1984 unveiled its PC Network, based on a network IBM's token passing ring has been designed with developed by Sytek Inc. This is a coaxial the concepts of expansion and evolution foremost. network using the CSMAICD access scheme. The system is a ring-star as described in The adaptor boards cost $695 each, and a group principle in Section 30.2.1.3. This consists of a series of up to eight PCs requires one Network Translator of passive concentrators connected in a ring together. at $595; the standard maximum length of the Off each concentrator is a set of terminals, devices cable being 1,000 feet, although with customised and computers in a star shape, wired so that each installation this can be extended up to 3·1 miles. becomes part of the main ring. Rings may be The IBM PC Cluster, in contrast, works at 48K bytes interconnected by Bridges or connected to other per second, some five times slower. networks by Gateways. The scheme allows every­ The product packaging includes the adaptor card thing from a standalone ring up to an integration of with 3 metres of cable, a fixed frequency Translator Unit and connection hardware, 8-way splitter and Fig. 57. Basic Star-Ring cables. There are also optional cabling components of varying pre-cut lengths and an 8-way base Passivewiring concentrators expander. The token-ring system is still seen as the backbone connecting IBM's different local-network environ­ ments, including the PC Network and the Industrial Network. The latter has been designed to cater for factory flow data collection and the interconnection of robotic systems, machine tools, numeric pro­ cessors and industrial computers. The token-ring system is, in IBM's words, 'one type of network ... general purpose ... capable of linking different "" --- ~ Bridges kinds of computers, workstations and other devices ,-- -- - ...... _\ " .;II Bridge " may be ... for the exchange of information and the sharing connected togetherin of resources and large databases.' a Backbone Ring

A2.2.1 The PC Adaptor Card Fig. 59 illustrates the modular layout of the PC Network adaptor card: a single, high-density, plug­ in module which physically, as well as logically, separates network processing from the attached device, whether it be the IBM, PC, PC XT, PC AT or portable PC all running under DOS 3.1. The broadband coax feeds into the 2M bitls RF modem which occupies almost half the adaptor board. This module handles physical-level processing Fig. 58. Gateways and Bridges on the network. It broadcasts at a fixed frequency 246 Appendix '2

8-BIT PARALLELINTERFACE language, as long as both the commands and the TO PCSYSTEMBUS necessary ancillary information are in the correct OSI LAYERS3-6 (SYTEKNETWORK,TRANSPORT, format. ! AND SESSION-LEVEL PROCESSING) A2.2.2 Network Protocols 8KbROMFOR Each adaptor board has a unique 48-bit address * HANDLINGOSI NETBIOS LAYER7 (APPLICATION 3OKbROM; LEVEL) PROCESSING held in ROM, and it is to be expected that IBM will E3 16Kb RAM adopt a 48-bit address as a standard throughout its local-network product line. With this size of addressing, the number of different address possibili­ ENCLOSED 2 MBIT/S ~ INTEL INTEL ties is virtually limitless. RFMODEMCIRCUITRY; ~188 OSILA YER1(PHYSICAL­ 82586 Sytek's network-layer protocol (layer 3 in the OSI LEVEL) PROCESSING model) accommodates either datagram (connection­ less) or session (connection-based) routing. Connec­ tion-based operation is seen as the key to maintaining MICROPROCESSOR OSILAYER2 DRIVESLAYERS (LINK-LEVEL) SNA/SDLC parity, which is also session-based, while 3-5 (SYTEK PROCESSING; PROTOCOLS), AND SINGLE-CHIP datagrams are generally regarded as the best mode LAYER7UBM PROCESSOR, ROM, NETB10S ROM) AND RAM of operation for data being passed between local

*NETBIOS=NETWORKBASICINPUTOUTPUTSYSTEM networks, via a gateway. The network protocol also includes software for bridging between different channels. This uses a Fig. 59 IBM's broadband based PC Network table look-up to match a named network entity on developed in collaboration with Sytec. The major one channel with one or another channel. Since components of this board are logically and physically stations on the PC Network only single transmit distinct. By replacing the RF coxial cable electronics and receive channels, this facility could be adapted for a twisted pair interface, and CSMA/C control with for routing between adjoining local networks. token passing, a similar board would accommodate The transport protocol (layer 4 in the OSI model) IBM's token ring. is similarly divided into session-based and datagram­ based operations. The session version, called the Reliable Stream Protocol (RSP), supports multiple and listens for incoming messages on another virtual sessions each of which can be separately frequency. These IBM boards are not 'frequency­ flow-controlled. IBM opted to support only 32 agile' and cannot be altered for use on other simultaneous sessions between devices on the

I channels, or to switch between different channels network, although the Sytek protocols could on the cable. This denies the user the benefits of support many more. In addition, these protocols the full bandwidth of broadband cable, and to this would support sessions with a remote host via a end the PC Network might just have well employed gateway PC designed to emulate an IBM 3274 baseband (like ), or even cluster controller, see next section. twisted pairs. Sytek also support a number of broadcasting PC Network will support up to 72 terminals options. Messages can be sent to all stations, to a per network, although Sytek independently offer group of addresses, or to a specific station. This enhanced features such as multichannel operation capability is compatible with a scheme IBM has to support up to 1,000 PC's on the network. introduced within the IEEE for routing between The Intel 82586 shown in Fig. 59 runs essentially interconnected, local networks, called 'source rerou­ as in an Ethernet interface, for which it was designed, ting'. With this technique an originating station first but with two small operating-parameter exceptions. searches the local network for the destination. If These are a different clock speed (2M bits/s instead unsuccessful, it sends a message to gateway nodes of Ethernet's 10M bit/s data rate) and a framing requesting that each broadcasts a search message technique based on the flag control characters to the stations on adjoining networks. This process inherent to both HDLC and SDLC. Ethernet uses is repeated until the destination station is reached, Manchester code violations to delimit frames. whereupon the destination formulates a response Each board has an 8 Kb ROM chip containing the to include the necessary routing instructions for NETBIOS, Network Basic Input Output System. This subsequent data transfers. will no doubt affect compatibility with IBM's other local networks and related products just as the PC Mainframe Links BIOS governs compatibility with IBM's PCs. One of the few software packages that IBM The NETBIOS is driven by the same Intel 80188 announced with its PC Network was 3270 emulation. microprocessor that handles the high-level Sytek It is IBM's stated intention to have '3270 data-stream­ protocols, see next section. It is programmed to compatible access to System/370-based applications look for any of 17 network commands. These include . .. and to have IBM 3270 personal computers English-type instructions such as CALL, which attached to selected models of the same IBM 3270 establishes a session; SEND, which transfers the Display Controller' with certain of the file-sharing contents of a buffer to the local network; RECEIVE, features and capabilities that PCs attached to the PC which tells the network interface what to do with a Network will enjoy, including 'support of the IBM message it has received. Significantly the NETBIOS NETBIOS interface.' interface can be supported by systems other than PC Network will support the bootstrapping of PCs and will work identically with any high-level programs held on a file-server into a workstation.

247 Expanding and Networking Microcomputers

For example, a 3270 data-stream formatter package responding to polling from a remote host, and could be downloaded from a common file-server appearing to it as a 3274 cluster controller. In this into a PC workstation. This workstation could then context the PC Network is likely to offer a more engage in 3270 off-network communications with a flexible and cost effective approach to micro­ host via a gateway computer, such as a PC/AT, mainframe linkage than the current trend using 3270 which could also double as the file-server. terminal emulation boards. A gateway PC would also be responsible for

248 Appendix 3 PERSONAL COMPUTERS IN TEST AND MEASUREMENT - THE IEEE-488 GENERAL PURPOSE INTERFACE BUS By Jim Truchard, president of National Instruments, Austin, appearing in the November/ December 1983 editions of Personal Computer Age. Copyright © Personal Computer Age.

A3.1 IEEE-488 BACKGROUND Many business equipment suppliers were encour­ aged to provide GPIB options for their peripherals. The IEEE-488 or General Purpose instrument (or While the Apple was not introduced with a GPIB Interface) Bus (GPIB), is a medium speed digital bus interface, several manufacturers filled the void with used for computerised control of instrumentation, a GPIB option. and more generally for limited local area networking The personal computer offers an ideal solution for in the laboratory and factory environments. IEEE-488 instrumentation workstations for several The GPIB has been associated with the personal reasons. The PCoffers convenient size for workbench computer since the beginning of personal computers. placement and good language support for scientific When Hewlett-Packard first invented the GPIB, calling applications, along with a large base of applications it HPIB, it also designed a personal computer (then software that includes engineering software. called a programmable calculator) programmed in Excellent graphics capability allows the user to BASIC to control the GPIB instruments. The concept present measured data in a variety of formats. Low­ for the GPIB was conceived in 1965. In 1972 a US cost peripherals support the user's application for advisory committee to the International Electrotechni­ printing and plotting. With combinations such as cal Commission was formed to study HP's proposed National Instruments GPIB-PC and the IBM PC data system. In 1974 the IEC approved a draft of the HP rates, up to 300 Kb/sec can be achieved. For portable proposal. In 1975, the Institute of Electrical and or field applications, compact PCs are available. Electronic Engineers (IEEE) published the IEEE-488 Standard/1975, 'Digital Interface for Programmable A3.2 IEEE-488 BENEFITS Instrumentation'. The American National Standards Institute published the identical MC1.1 In 1976. A Prior to the introduction of the GPIB, interfacing revision of the IEEE-488 was published in 1978, instrumentation to a computer was plagued with primarily to clarify some points which were being problems. In most cases a special purpose interface misunderstood by users. The international counter­ was needed for each instrument tied to a computer; part to this standard, IEC publication 625-1, is each interface required a special software handler or functionally and electrically equivalent, although a driver program. Even today, this is not practical different connector is specified. unless a simple single-purpose function is needed­ Soon after the IEEE-488 standard was adopted, and even in this case the application must be one of the first personal computers, the Commodore widespread enough to justify the high development PET, was introduced, with the GPIB used as its cost. external bus. The PET demonstrated the capability The GPIB allows up to 14 instruments to be of the GPIB in non-instrumentation applications. connected to the computer using only one interface, as is partially shown in Fig. 60. Further, the GPIB permits connection of several computers to share a GPIB MEASUREMENT SYSTEM common set of instruments or peripherals. A single computer can also be used to control several instrumentation buses with additional GPIB interfa­ ces. If comprehensive software is provided with the interface, the user's manpower expenditures for Power developing software can be greatly reduced. CPU amplifiers Controller/ The low cost of today's personal computers makes Talker/ Listener them very attractive for GPIB applications. Manual measurement systems can now be converted to automated systems, providing several benefits to the user: Controller/ Talker/ Listener 1. More accurate results since calibration of the system can be automated. 2. Reduced errors introduced by operator fatigue. 3. Greater measurement speed. Controller/ 4. Reduced manual handling of data because data Talker/ Listener is automatically entered into the computer. 5. More interaction with theoretical calculations because measured data can be used as input for such calculations. 6. Faster turnaround between time of measurement and final output of processed data in the form of tables, graphs or other results. Fig. 60 Capabilities and layout of a possible GPIB 7. Greater ability to process, transfer or store large system quantities of data. 249 Expanding and Networking Microcomputers

8. Better diagnostic capabilities because errors can The system designer first selects the GPIBfunctions normally be detected quickly. which are to be used in a particular device . This in 9. Greater flexibility in transferring data between turn determines the type of message coding receivers different computers such as PDP-11 s, LSI-11 s, S-100 and drivers which will be needed to implement a systems, Multibus systems, and IBM PCs. full system. The availability of large-scale integrated The IEEE Std 488 has been highly successful GPIB circuits has greatly simplified the hardward because it is complete and precisely specified. designer's job. Electrical, mechanical, and functional specifications are detailed, yet do not force the user to any particular A3.3.1 Talkers And Listeners components or circuit design. This approach allows Two types of chips are available: those supporting functionally equivalent new technology to replace talker and listener functions and those supporting older designs. talker, listener and controller capability. The software Eighteen (or fewer) parallel interacting state designer will then develop software that supports diagrams are used to specify the GPIB. These stated the selected subset of GPIB functions. Computer diagrams provide a precisely defined hardware interfaces supplied by reputable vendors will support protocol to implement a complete measurement and a full set of GPIB functions. control system, including a means for communication Because the designer of a GPIB compatible device among a group of interconnected devices. is free to implement any of numerous compatible subsets of GPIB functions, the computer interface A3.3 THE IEEE-488 IN ACTION software must have considerable flexibility. The IEEE-488 standard does not place any constraints on Operation of the GPIB is partitioned into two logical the format of device dependent data bytes . functions: interface functions and device functions, This means that the system programmer must learn as illustrated in Fig. 61. This partitioning is analogous numerous conventions for programming individual to the layering used in the ISO Model for networking instruments. Fortunately, some guidance for the systems. Two types of messages are used: 1) GPIB design of device dependent data formats exists in function messages used for bus management, called the form of a 'Recommended Practice' , IEEE728D10, interface messages, and 2) device function messages 'Draft Code and Format Conventions for use with or device dependent messages, which are communi­ lEE Std 488-1978 Digital Interface for Programmable cated between the various devices via the GPIB, but Instrumentation'. The international counterpart is IEC which are not used or processed by the bus. publication 625-2, which does not yet have as broad The device functions and messages are determined a scope as P728. by the user (for the computer) and by the equipment Fig. 62 shows a typical system using the GPIB. manufacturer (for the instruments) to provide the Three types of devices are required to organise and necessary operational capability. The interface func­ manage the flow of information on the bus: 1) tions provide a standardised means for physically listener, 2) talker, and 3) controller. connecting devices together while providing A listener has the capability of being addressed by maximum user flexibility. an interface message to receive '(device dependent) Logical communications occur only between the messages. A talker has the capability of being interface functions of devices, and are referred to as 'addressed' by an interface message to send device transferring remote messages (in contrast to local dependent messages.A controller has the capability messages between the layers within a device). of transmitting interface commands (which are Interface functions, remote messages, and local received by all devices). messages from the device functions down to the interface functions are the subject of the 488 standard, while dev ice functions are specifically excluded, and local messages going to the device A3.3.2 Bus Interface Commands functions are only suggested. The interface commands are used to manage the bus, and in particular, to selectively enable a talker and one or more listeners, by transmitting the talk

DEVICEB and listen addresses. A GPIB-based measurement DEVICEA system may have one or more 'controllers. If more Layer 2 capability than one controller is connected to the GPIB, one Device defined by Dev ice functions device designer functions and only one is designated the system controller. The system controller may temporarily pass control to any other controller. local local messages messages Fig 62 also shows the 16 signal lines, five of which are used for bus management, eight for data transfer, and three for supervising the data transfer. Interlace' iiitertace' Layer 1 defined by functions functions The eight data lines are used for transferring 'multi­ IEEE-STD 488 line messages' in 8-bit parallel, byte serial fashion. Multi-line messages are either interface commands r remot e messages 1 or device-dependent .data bytes. GPIB The three handshake lines are used in an Shaded portion is the subject of the 488 Standard asynchronous interlocking sequence to guarantee to the transmitter, as well as all receivers, that a given Fig.61 The layered architecture of GPIB byte has been accepted by all receiving devices.

250 Appendix 3

IBM PC WITH GPIB PC ABLE TO TALK LISTEN AND CONTROL

TALKER ~ 0101 1 13 0105 0102 2 14 0106 FREQUENCY 0103 3 15 COUNTER 0107 0104 4 16 0108 EOI 5 17 REN OAV 6 18 GNO(TW PAIRW/OAV) NRFO 7 19 GNO(TW PAIRW/NRFO) NOAC 8 20 GNO(TW PAIRW/NOAC) IFC 9 21 GNO(TW PAIRWIIFC) SRO 10 22 GNO(TW PAIRW/SRO) LISTENER ATN 11 23 GNO(TW PAIRW/ATN) GROUNDONLYAT -+- SHIELD 12 24 SIGNALGROUND SYSTEMCONTROLLER ~

PRINTER @

TALKER/l.ISTENER Fig. 63 GPIB cable pin connections.

Only one interface at a time may be addressed to DIGITAL VOLTMETER DATA LINES talk, while multiple interfaces may be addressed to 0101-0108 listen simultaneously. The talk and listen addresses HANDSHAKE LINES are interface commands, and are therefore trans­ -----... DAV (DATA VALID) I ~----. NRFD (NOT READY FOR DATA) ferred on the bus via the SH and AH functions with '------. NDAC (NOT DATA ACCEPTED) ATN asserted. Talk-only devices are meant to be used with MANAGEMENT LINES "------... IFC (INfiRFACE CLEAR) systems with no controller. Since they cannot be '------+- ATN (ATTENTION) ~------.. SRQ (SERVICE REQUEST) prevented from talking, they must be the only talker ~-----... REr~ (REMOTE ENABLE) '------... EOI (END OR IDENTIFY) on the bus. Listen-only devices are also meant to be used in systems with no controller. These always Fig. 62 GPIB signals and devices listen and cannot be prevented from doing so. The controller (C) function is the originator of all interface commands. Only one interface at a time may be controller in charge (CIC), and protocol The special functions provided by the GPIB are: exists for it to pass the control responsibility to Source Handshake (SH) another interface with controller capability. One Acceptor Handshake (AH) interface, on a GPIB, designated as the system Talker or Extended Talker (T or TE) controller, is responsible for initialising the bus. Listener or Extended Listener (L or LE) Following initialisation of the bus the system Controller (C) controller is the controller in charge. Service Request (SR) A controller in charge is in the active state (that is, Remote/Local (RL) it is active controller) while sending interface Parallel Poll (PP) commands (ATN asserted), and switches to stand­ Device Clear (DC) by to allow the currently addressed talker to send Device Trigger (DT) device-dependent data to all the currently addressed The source handshake (SH) and acceptor hand­ listeners. shake (AHl are used to transmit and receive multi­ The active controller is responsible for addressing line messages. These messages are interpreted as and unaddressing talkers and listeners, conducting interface commands by all devices when the attention serial polls and parallel polls, triggering devices, and (ATN) bus management line is asserted, and as clearing devices. It is also responsible for detecting device-dependent data by all the active listeners the service request (SRQ) bus management signal. when ATN is not asserted. The pass control feature provides the capability The talker (T or TE) and listener (L or LE) functions for having multiple computers on a single bus. This are used to establish the logical connection for means that computers can share peripherals and device-dependent data to be transferred via the use the pass control features to implement a handshake. When an interface is addressed as a networking protocol. talker, its associated device function is allowed to use the source handshake to transmit data bytes. A3.4 NATIONAL INSTRUMENTS IEEE·488 BOARD When an interface is addressed as a listener its associated device functions are allowed to use the National Instruments' GPIB-PC interface package acceptor handshake to receive data bytes. supports this full controller capability. It also includes 251 Expanding and Networking Microcomputers

Data Byte commands assigns the talkers and listeners. Every 0101-8 x talker and listener on the bus has an ASCII identification code. The controller will usually have False-H Not Valid a talk and listen address as well. r-}setbY OAV True-L ==-" Valid F--\ Source Devices can have one or more primary addresses and secondary addresses. Devices with secondary All Instruments Ready False-H addresses are known as extended talkers or extended listeners. Many instruments use a five-pole switch NRFO True-L to select the talk and listen address from 0 to 30. Some newer instruments use nonvolatile memory o.c. to store an address selected from the front panel. Set by NOAC:..==.:....:..=....-~~-.I_~_~.L.-._~__""""-'-....r....-_~_} Acceptor A total of 24 lines are used to implement the bus (Fig. 63). Of these, 16 are signal lines, one is ground, Fig. 64 Bus handshake timing one is the cable shield, and six are twisted pair commons for 6 of the signal lines. The 16 signal a feature which makes it useful for redundant lines are used to carryall information, interface systems. The system controller is determined after messages, and device-dependent messages among power-on. Any PC can be made the system controller interconnected devices. at power-up time. This means that shared peripherals The bus is organised into three sets of signal do not need all computers turned on. lines, as shown in Fig. 62: The remote/local (RL) function determines whether 1. Eight data lines (D101 through 8 Data In/Data an instrument is programmed via the GPIB or the Out). front panel. Service request (SR) can be asserted 2. Three handshake lines (NRFD, DAV and NDAC). asynchronously by a device to alert the controller of 3. Five interface management lines (lFC, ATN, an error or special condition. Several devices can SRO, REN and EOI). assert service request simultaneously. The eight data lines carryall multiline messages, Service request is used in conjunction with serial including interface messages and device-dependent poll, which is described more fully later. A parallel messages. In many instruments, messages are based poll (PP) is initiated by the active controller to on the seven-bit ASCII character set. The three determined the status of devices on the bus. Each handshake lines (NRFD, DAV, and NDAC) are used device programmed to respond will respond with to effect the transfer of each type of device message one data bit on one of the eight data lines. on the 010 lines from a talker to all addressed The device clear (DC) function is used to bring a listeners, or interface messages from the active device on the bus to a known predetermined device­ controller to all interfaces on the GPIB. dependent state (usually the power-up state). The The NRFD (Not Ready For Data) lines are used to device trigger (DT) function provides capability for indicate the condition of readiness of all devices to initiating a sequence of events. For example, a accept data. All instruments drive NRFD 'false' as waveform generator can be programmed to generate ATN is driven 'true.' Those devices capable of a pulse when it is triggered. DT can also be used to receiving interface messages using their acceptor synchronise and trigger groups of instruments. handshake function may drive NRFD true while Two types of commands are used to implement interface messages are being transmitted. the GPIB functions: Uniline commands use the bus Instruments addressed as listeners may drive management lines individually. Multiline commands NRFO true while device message when ATN is false. use the first seven data lines, with ATN true. There The NRFD line is monitored by the controller source are four types of multiline commands: universal, handshake function when ATN is true and the talker addressed, unaddress and address commands. All source handshake function when ATN is false. - devices must respond to universal commands The DAV (Data Valid) line is used by the source whether or not they have been told to listen. handshake function to indicate the validity of data Only addressed devices respond to addressed on the data lines. DAV is driven true by the controller commands. The unaddress command removes tal­ source handshake when ATN is true, and by the kers and listeners from the bus. The address talker source handshake function when ATN is false. The DAV line is monitored by all instruments if ATN is true, and by instruments addressed as listeners o IBM PC when ATN is false. : with GPIB-PC D A3.5 IEEE-488 BUS CONNECTIONS to other The timing diagram in Fig. 64 shows how the ~IIIIIIII devices c=r=J handshake cycle works. The encircled numbers 10/ " match those in parenthesis in the text. The beginning of the cycle is assumed to be NRFD and NDAC low (true) and DAV high (false). After all acceptors have released NRFD (1) the source sees that NRFD is high and knows all devices are ready. It asserts the new byte on the data lines. After an appropriate settling time the source asserts DAV low (2) indicating that Fig. 65 the data is valid. 252 Appendix 3

controller has commenced the serial poll sequence, o it will continue until it has either serviced or ignored IBM PC : with GPIB-PC all the devices requesting service. D The EOI (End or Identify) line can be used by a talker to indicate the end of a data string. This is ~IIIIIIIILIJ accomplished by setting EOI true at the same time the first byte is enabled on to the data line. The EOI [ill \~ to other line also is used by the active controller to conduct devices a parallel poll. The active controller initiates a parallel poll of all instruments with parallel polling capability by setting ATN and EOI true simultaneously. Bus cables are used to interconnect instruments. There are three basic restrictions on cable length. First, the maximum length of any single span between two instruments is four metres. Second, the maximum average length is two metres per device. Third, the maximum total length for all interconnected instruments is 20 metres. Typical linear and star configurations are shown in Figs. 65 and 66. Fig. 67 shows the cable connector arrangement. Fig. 66 A conceptual star configuration

After sensing DAV true the acceptor sets NRFD true A3.6 INSTRUMENTATION WORKSTATION (3), thereby preventing the source from attempting a APPLICATIONS new transfer. After each acceptor takes the data, it releases NDAC. When all have accepted, NDAC goes Instrumentation workstations are configured for false (4). After seeing NDAC go high, the talker sets hundreds of unique applications. While many appli­ DAV high (5), indicating that data is no longer valid. cations may share common instruments, the goal of The acceptors then set NDAC low in preparation for each system is different. the next cycle. The application software tailors the system to the The five bus management lines are IFC, ATN, individual needs. A properly configured system SRQ, REN, and EOL IFC and ATN are used by all offers a variety of easy-to-use, well-supported instruments except possibly talker-only and listener­ languages. For example, National Instruments soft­ only devices. These lines generate uniline messages ware for the IBM PC supports five languages, that are used for bus management. The ATN including BASIC, , Pascal, C and assembly (Attention) line is used by the active controller to languages. indicate how data is to be interpreted, and which The computer is an essential system component devices must respond to data. which controls all stimulus, response, or control The ATN line must be monitored at all times by instruments; it collects data, processes data, and all devices other than the active controller. When presents results in the desired format. The user has the ATN line is true, the active controller can send interface messages to instuments on the bus. Device­ dependent messages can be sent by the active talker to active listeners when the ATN line is false. The IFC (Interface Clear) line is used by the system controller to place the GPIB interface functions in a known quiescent state. The IFC line is driven true (for at least 100 microseconds) only by the system controller and must be monitored by all other instruments. IFC may be set true by the system controller at any time. The REN (Remote Enable) line is used to enable remote control or remote operation of a device. The use of the remote function by a device is optional. The REN line is driven true only by the system controller, and may be changed at any time. Devices must monitor it at all times and return to local control whenever it becomes false. IEEE 488 BUS The SRQ (Service Request) line is used by one or TYPICAL more instruments to asynchronously request service from the active controller. The controller performs a 'serial poll' to determine which device has requested service and branches to the service routine. SRQ is not released by the device until it is polled. The SRQ line is an open collector line so several devices can request service at the same time. After the Fig. 67 The cabling connector system 253 Expanding and Networking Microcomputers maximum flexibility if the same operating system To read back a measurement from an instrument, and GPIB software is available on a variety of the computer uses the active controller function to computers. The IEEE-488 interface bus provides a unaddress any existing listeners, address the desired common interconnect for all the instruments. instrument as the talker, and address itself as a The instruments provide the signals for stimulus, listener. The computer then places its controller measure responses, or supply control signals to the function in its standby state and uses its AH function unit being tested, measured or controlled. The signal as listener to receive data that contains the measured lines are the transmission paths for stimulus, results. response, and control signals between the instru­ In many systems, triggering an instrument starts a ments and the switching networks. sampling interval so that a measurement may not The switching network routes stimulus signals, be available for a long time. In the description response signals, and control signals between the above, the computer idly waits for the instrument to instrumentation and the unit being tested, measured start talking. An alternative is to program the or controlled. instrument to assert the SRO signal when the Fixturing is the adaptor between your measure­ measurement has been captured. The computer can ment system and the unit being tested, measured or then switch tasks after triggering the instruments, controlled. This can be cabling, a connector or a and switch back when the controller function detects custom fixture. SRO. Finally the unit under test can be any device from Let us now consider a specific example: a a sonar transducer to an ; almost hypothetical measurement system that is used to any device that you wish to test, measure or control. automatically determine the voltage response versus Over 2,000 instruments are available with GPIB frequency of some unit under test. The system interfaces. These instruments vary in complexity consists of a frequency synthesiser which provides from devices with simple address decoders and data the input signal, and a sampling digital voltmeter latches to instruments with several microprocessors which measures the resulting output level. on board. The GPIB provides functional interface The synthesiser is assumed to have a zero output capability for instuments with a tremendous range impedance and has a flat frequency response over of capabilities. the range of interest, while the voltmeter is assumed Data rates vary from a few bytes per second to to measure true rms voltage by integrating over a 500 Kb/sec or greater. sufficiently long interval. The operation will execute The table shows some typical instruments and their the following steps: interface speed requirements. National Instruments 1. Initialise the GPIB and the instruments. GPIB-PC interface supports data rates up to 300 Kbl 2. For each frequency in the range of interest: sec. These rates are satisfactory for most appli­ a. Set up the frequency synthesiser. cations. b. Trigger the sampling voltmeter. Typically the application described above would c. Input the result from the voltmeter. have a signal computer that would serve as the d. Store it in the next array location. system controller and the only controller on the 3. Restore the instruments to local control. GPIB. It would have talk and listen capabilities, as 4. Generate a report of voltage vs frequency. do all the instruments on the bus. The system controller initialises the GPIB by The operation of the system begins with the asserting IFC. If a previous program used the GPIB, computer initialising the GPIB, placing all the the bus and the instruments could have been in instruments in their remote control states, and some unknown addressed configuration. IFC will clearing them back to a known configuration. The cause all devices to be unaddressed and restore the computer then enters its main measurement loop, GPIB itself to a known state. For start-up operation, where it repeatedly sets up the instruments, triggers the IFC signal is required to activate the controller­ a measurement, and reads in and stores the results. in-charge capability of the GPIB interface in the At the conclusion of the loop, it places the computer. instruments back in their local control states and The next step in the initialisation is to assert the then generates a report of the measurement results. REN signal and place each instrument in its remote To set up an instrument, the computer uses the control state. If the instrument has a front panel active controller function to unaddress any existing return-to-Iocal (RTL) button the local lock out (LLO) listeners, address the desired instrument as a listener, message must also be sent. and addresses itself as the talker. The computer The final step in the initialisation sequence is to then places its controller function in its standby restore all the instruments to some known internal state, and uses its SH function as talker to send data configuration, in case a previous GPIB program has which is interpreted by the instrument to select left some parameter with an undesirable value. The various operating parameters. alternative is to completely specify all parameters There is usually a one-to-one correspondence whenever the instrument is set up. between a front panel button and a data byte string It should be pointed out that some instruments (programmable command) which invokes the same specifically require a device clear command followinq operating parameter. But one designer's commands power-on before any remote programming can take are another designer's data: Do not confuse a place, and some instruments have operating modes programmable command with a device function which are remotely settable but can only be cleared ('device-dependent data' in IEEE-488 terms) with a by a device clear command. Nothing will suffice command to an interface function (command or here except to thoroughly read the operating address in IEEE-488 terms). manual for the instrument (experimentation using an 254 Appendix 3 interactive control program may also prove very system (requiring the GPIB software to be installed useful). as an interrupt driven device handler), it is obvious To clear all devices simultaneously the device that the software investment is appreciable. clear (DCl) command can be used, or each device In applications where instruments are shared may be cleared independently using the selective among several computers, the application software device clear (SOC) command and addressing the will be even more complex. Fortunately, off-the­ instrument as a listener. shelf GPIB system software is available to support From the above discussion it is clear that two the IBM PC. This software must support all the basic classes of GPIB functions are required to accomplish GPIB functional capabilities. For maximum flexibility, the initialisation: System controller functions to two levels of capability should be provided: 1) assert IFC and REN, and controller-in-charge (active primitive GPIB functions for providing complete GPIB controller) functions to transmit one or more capability, and 2) high level GPIB functions for user commands and addresses. simplicity. Setting up the synthesiser will require that the The primitive functions require that the user be GPIB interface in the computer be a talker and the particularly familiar with GPIB commands and synthesiser be a listener, and a suitably prepared protocol when he actually only wants to do simple buffer of data be transferred to be synthesiser. measurements with his instruments. To shield the In order to transmit data to the synthesiser the non-expert user from the GPIB details and to provide computer interface must go to the standby state the expert user with convenient access to the GPIB, after having addressed the synthesiser as a listener. a set of higher level functions is recommended. After setting up the synthesiser the computer Primitive subroutine calls, on the other hand, interface goes back to its controller state. The provide the serious GPIB design engineer the tools computer can then trigger the voltmeter by sending to optimise system performance. Combinations of the group executive trigger (GET) command. The primitive and high level calls give the GPIB user computer then sets up the voltmeter as a talker and maximum flexilbitiy. itself as a listener. The GPIB software is usually provided as a group The computer then inputs an array of bytes of subroutines which are callable from several representing the measured voltage. After completion languages. These subroutines can be designed for of the data transfer, the computer interface will standalone use with an application program or can normally take control of the bus to continue the be integrated into the operating system as a handler. operation. The measurement cycle will repeat until In many cases the handler is preferable, because the all frequency points have been measured. user can take advantage of operating system In order to insure reliable operation, the computer features. software must be capable of detecting numerous The operating system then can manage the GPIB error conditions. Function usage errors should be as one of its system resources. Along with software reported rather than causing the program or system for direct GPIB support, several other software to crash. modules can enhance user convenience. The first of After all measurement data has been taken, a these is diagnostics to verify proper hardware and frequency response can be generated from the software operation. accumulated data. In some cases this data may be Classes of Instruments Frequently Used with the used as input data for another program. In this GPID case, it is convenient for the software to be written Another user convenience is an interactive control in the same language as the other program. This program. This program allows the user to perform means that support for many languages must be any function (reading, writing, polling, and so forth) available. from a terminal. The interactive control program The generalized test system mentioned earlier can control the GPIB devices independent of the includes a block entitled 'applications software'. This application program being developed. It can be used software can be partitioned into two components: 1) to learn how to program GPIB devices, to measure generalised system software including GPIB support, system performance with different sequences, to and 2) applications-oriented software unique to a debug an application program one step at a time, or specific application. A further description of the GPIB to locate a malfunctioning device on the GPIB. system software is in order. The personal computer is ideally suited for The measurement example described in the instrumentation workstations if it is provided with a previous section may actually require many (some­ GPIB interface. Modern GPIB integrated circuits times obscure) manipulations of the interface regis­ eliminate many of the hardware complexities associ­ ters. Viewing the number of primitive GPIB ated with the GPIB. likewise, sophisticated GPIB operations, it is apparent that effective and reliable system software simplifies the application program­ software requires a significant investment. mers' job in designing a GPIB system. Special Extrapolating to a more elaborate measurement software for interactively the system system employing a multi-processing operating further simplifies the user's job.

255 Expanding and Networking Microcomputers

APPENDIX 4 ELECTRONIC PROTOTVPING - IN-CIRCUIT EMULATION ON THE APPLE II By W.G. Allan, appearing in the October/November 1983 editions of the Apple Users Magazine. Copyright © Apple Users Magazine

A4.1 THE APPLE IN INDUSTRY are no longer necessary when this development is completed. In such a situation, it is better to regard In most applications the Apple micro is used as a free­ the Apple as a microprocessor development aid, standing data crunching tool. Business applications with the end result being a dedicated SBC. predominate, with word processing, electronic spre­ To this end, let us look at the 'conventional' adsheets, database systems and general purpose development cycle and discuss each stage in some computation being used by a majority of owners in detail (Fig. 68). the areas of both the small business and engineering. Additionally, in engineering, the Apple can be extended almost without limit to a wide variety of A4.2 SPECIFICATION AND DESIGN control applications. This is due to the ease with which the basic system can be enhanced by a range It will be assumed, for the present, that the 6502 of peripheral boards that is unequalled for any other microprocessor has been chosen for the system. In micro, except by the IBM PC, for example, A/O and view of its pipelined architecture, powerful address­ 0/A converters, graphics boards, a full range of I/O ing modes and the wealth of support literature, this boards, and attached processor boards for at least processor is a reasonable choice for all except the six of the major microprocessors. most dernandinq applications. With this kind of power, plus excellent document­ The overall system is specified in block diagram ation and worldwide support, it is not surprising form, and an assessment made of the number and that Apples are found in many indusrial laboratories type of input/output devices required (that is, serial almost permanently tied up to a wide range of I/O, parallel I/O, counters, clocks and timers, etc). apparatus, from chemical processing plants to For a 6502-based system, the 6522 versatile interface nuclear reactors. adapter (VIA) would be a natural choice for many However, there is an increasing need in industry applications. for small, dedicated SBCs (Single Board Computers) Also at this stage some estimation would be made that can be used in control applications not of the RAM/EPROM memory space required by the necessarily requiring a keyboard, full visual display final system, so that a suitable SBC may be chosen. and disk storage. The system program task would then be broken In other words, these facilities may well be required down into distinct modules and detailed flowcharts for the development of the control programs, but would be prepared.

Specification & design • " y Code Hardware preparation, construction Code translation " t Software Partial Hardware testing ------..--- - - testing I ...... - I ~ I I - Hardware/software integration t Final system test

Fig. 68 Conventional development cycle in electronic engineering

256 Appendix 4

A4.3 CODE PREPARATION AND TRANSLATION As Figure 68 shows, the software testing may, at least partially, include some hardware testing. At this stage the designer would actually start writing For example, similar input/output devices may be the system software, and a decision would have to attached to the Apple as are intended for the final be made as to whether the source code would be (SBC) system. The peripheral apparatus may be written in high level language (such as BASIC or attached to these and the software testing thus Pascal) or . Although high-level extended further towards the final system test. language is often preferred for applications requiring extensive arithmetical operations, the general A4.5 HARDWARE CONSTRUCTION AND TESTING inefficiency of its compilation into makes assembly language preferable in most cases. While the preparation and testing of the software is Therefore the designer would very likely prepare in progress, some hardware construction and testing assembly language source code, with extensive can be carried out. comments, using a text editor. The object code The SSC may be designed from scratch using, would then be produced using one of the many say, wirewrap techniques initially then subsequent assemblers available for the Apple - Applesoft printed circuit board preparation. Toolkit assembler, Lisa, S-C, Merlin, etc. More likely, however, is that a commercially available SBC would be used. A wide choice of A4.4 SOFTWARE TESTING these exists at a very reasonable cost, with extensive I/O, configurable memory map, built-in D/A and A/D This first involves a thorough testing of each converters, real-time clock and full expansion facili­ individual subroutine or program module, then a ties, thus satisfying the needs of most designers. gradual integration of these until as much as possible If he wishes to fully test the SBC, he may do so of the final system software is tested. by incorporating test procedures into a system Rarely does any software work correctly at first monitor ROM and effectively turn the SBC into a attempt, and so it is the power of the available 'mini development system'. debugging aids on the development system that is However, this approach would be an unnecessary all-important at this stage. duplication of the facilities already available on the The facilities that the Apple system monitor has development system. For the moment, then, let us include examining and changing memory locations, assume that we have an SSC which has somehow examining and changing registers, moving a range already been tested, maybe by the manufacturer. of memory, carry out single-line assembly (not available on Apple II Plus), listing (disassembling) a A4.6 HARDWARE/SOFTWARE INTEGRATION section of memory, single-step and trace (not available in the autostart ROM) and, of course, Even if things have progressed smoothly so far, we running the program at full speed. . still have, at best, a program which functions Various programs and hardware attachments are correctly on the Apple, and an SBC onto which we available to enhance these basic debugging facilities. must now transfer the system software.

Specification & design

y " y Code Hardware preparation, construction

Code ~, translation t ...... Software In-circuit -- Hardware - emulation .- testing ~-- - testing t Final system test

Fig. 69 Development cycle using in-circuit emulation 257 Expanding and Networking Microcomputers

Even if the I/O devices we attached to the Apple HOST(Apple) TARGET(SSe) are identical to those on the SBC, there is still more a work to be done. The Apple program in RAM (say, starting at address $800) must be relocated to function correctly ~~~ at the address of the sec's EPROM (say, $F800). This is a simple change to make using an assembler. However, we must also add more code to the b ICEcable & header program to suitably initialise the stack pointer. Also, it is very likely that all the I/O device addresses must be changed when transferring the program to the ~DD SBC. ~D~ Finally, we have to provide the means to actually run the program, and this involves including the vectors (particularly the reset vector) at the top of c memory. With all these changes made, an EPROM is blown ICE and fitted to the sec, and the system should then ~D~D II work correctly. On a very simple system it is possible that the integration process may be as straightforward as d this. In most cases, however, we are more likely to have a system that does not function correctly, and so we would have liked the full set of debugging ICE tools from our Apple to be available on the SBC, but II only until the system works correctly. DoDD It is at this stage of system integration that things get very difficult, and we would have derived great benefit from having the facilities of in-circuit ssc:Single board computer MPU: Microprocessor RAM: Zero page RAM emulation, as we shall now see. PRAM: Host's program RAM EPROM:Target's EPROM I/O: Input/Output In-circuit emulation (ICE) consists of circuitry and software integrated with the 'host' development Fig. 70 Practical application of in-circuit emulation system, which allows almost total control of the 'target' (for example a single board computer onto EPROM socket via a 24 pin header and the program which it is intended that an applications program transferred from the host to the programmer's RAM. shall eventually be transferred). Only when this program is working correctly do we This is achieved via an emulator cable terminating actually program an EPROM. in a 40 pin header plug which is inserted into the With the EPROM now fitted to the target, SSC and socket on the target normally occupied by its tie ICE header replaced by 'a microprocessor, the microprocessor. Thus various sections of the target system should now function exactly as the original computer may be tested in turn from the host, version developed on the host, as shown in Fig. thereby avoiding the awkward hardware/software 70(d). integration phase of development (see Fig. 69). The application of ICE is illustrated in Fig. 70. In Fig. A4.7 ROVINO'S ICE II BOARD 70(a) the peripheral apparatus is shown controlled entirely from the host, with the ICE board serving This product is a purpose built ICE/Debug board for only as a debugging aid for initial program the Apple. Made in the UK, and at under £200 development. ($280), with full software support, it is a very For example, trace, breakpoint and the ability to desirable acquisition for anyone who uses the monitor particular memory locations ('windowing') Apple for developing control applications eventually can greatly reduce the program development time. intended to be implemented on secs. In other In Fig. 70(b) the ICE header has been inserted into words, it is for the 'hardware hacker'. the target board and its zero page RAM is now Prospective customers would be well advised that being used in preference to that of the host, since a thorough knowledge of 6502 assembly language the Apple uses zero page extensively for DOS, programming and hardware principles are necessary Applesoft and the machine code monitor. The host's to be able to exploit the full potential of this board. microprocessor and I/O are still being used, and the However, in the right hands it is a very powerful application program is resident in its RAM. tool indeed - in fact Rovino themselves describe it The next stage would be to start using the target's as being a kind of 'microcomputer multimeter'. I/O devices to control the peripheral apparatus, as ICE II consists of a standard height Apple peripheral shown in Fig. 70(c). board about 19 cm long with a 60 cm ribbon cable By now, the system development is almost attached at the keyboard end. This terminates in a completed, and it now remains to relocate the host's 40 way leader which plugs into the target board program so that it will run on the target, add the in the socket normally occupied by its 6502 appropriate vectors and program an EPROM. microprocessor. In some cases, the EPROM programmer itself may The only other hardware supplied is a small have emulation facilities. It may be attached to the jumper cable, intended for linking the Apple's 6502

258 Appendix 4

SYNC pin - pin 7 - to the appropriate terminal the start and end addresses are entered, and a post on the ICE II board. rather thorough RAM test starts. This is not strictly necessary for all applications, The only indication that anything is happening is but is generally useful if extensive debugging is to a tiny flashing dot above the first 'R' of the RAM be carried out, as it allows one to distinguish tester title. The tester takes about 17 sec for 1 K of. between opcode fetches and other bus activity. memory - its completion is signalled by an Four other terminal posts provided on the board asterisk printed on the screen, whereupon the test are labelled GND, +5 V, SCOPE and DEC. The +5 V immediately recommences. simply makes available the Apple's supply for To stop the test CTRL-C is entered, but the current powering the target SBC, provided its power test cycle is completed first, which could be a slight consumption (together with other peripheral cards) annoyance. Another CTRL-C returns us back to the isn't such that the 2·5 amp total capability of the RAM test prompt, or pressing any other key restarts Apple power supply is exceeded. testing. Under normal circumstances the SBC will have its If an error is detected ERR is printed followed by own supply and its ground will be commoned with the memory address, the expected and the actual that of the Apple via pins 1 and 21 of the header. contents. The DECode post is tied to the combined trigger Systematic examination of these can often show line of the ICE II board and will go to logic 0 for patterns in 'either the address or data that may 500 nS when the address set on the board matches reveal the source of the problem, for example, stuck the current address (the address match capabilities or shorted address or data lines. will be dealt with later). The 'disk' disassembler allows machine code from This can be useful for several purposes, including either the Apple or ICE (target) memory to be triggering a logic analyser or oscilloscope. However, disassembled into a named text file (complete with for the latter purpose, an extended trigger pulse is line numbers) on disk. available on the SCOPE post. This file may then be edited, using, for example, The most powerful debug facilities of the ICE II the editor provided with the Applesoft Toolkit, and board are determined by the state of 48 DIL switches reassembled. located along the top edge of the board - their This facility is extremely useful. For example, functions are described in Fig. 71. These allow the when used in conjunction with the Debug and ICE board to trigger when the current address of the monitors, it is possible to disassemble a suspect executing program on the Apple falls within the program in EPROM from the target, alter it to run in range of addresses determined by the Address the Apple's RAM (but still using the target's I/O Match and Address Qualifier switches. devices), fully debug it and finally prepare a corrected For example, if single stepping is required within EPROM. the address range $0200 to $023F, the Address Match switches would be set to $0200 and the A4.9 PROGRAM DEBUGGING USING THE Address Qualifier switches to $FFCO. ICE II Address match alone is not sufficient for the board to trigger - the appropriate Machine Cycle Having dealt with the' menu Iterns in a somewhat Qualification and Enable (MCQ) switches must be arbitrary order, we now turn our attention to the set. These allow the user to further restrict the first item, which installs the debug monitor for triggering to, for example, only read or write developing programs in the Apple, and the ICE operations or opcode fetches. monitor for controlling access of the facilities of the A BDEN switch is provided to enable the board target via the ICE cable and header. (that is the address comparator), and this is indicated After selecting the first menu item and entering by a red LED illuminating. the slot number for the ICE card, the screen lists the When the board triggers there is a momentary addresses of the four interpreters which will allow flash of the green LED, and the effect of the trigger access to the target board memory map when is then determined by the state of the Output running a program on the Apple. Function switches - either a RESET, an IRQ or NMI At this stage this information could probably be may be received by the Apple when this occurs, and omitted, and would be better included only in the the appropriate software must be provided to service manual. Pressing any key completes the setting up them. of the monitors, and they may be entered at any In some cases the software may be written by the stage from BASIC by CALL 0, or from machine code user, but mostely it would be provided on the by OG. This causes the 'DEBUG>' prompt to be system software disk supplied by Rovino. displayed. To enter the ICE monitor one simply types 'I', and A4.8 SYSTEM MENUS the debug can be re-entered by typing 'N'. The debug monitor, loosely speaking, includes all When the system disk is booted we are presented the facilities of the Apple machine code monitor and with Rovino's logo, then a main menu of five items: provides several important new ones. Examining and • Installation of the ICE and debug monitors. changing memory locations, moving and comparing • An ICE (target board) RAM tester. areas of memory, 8 bit arithmetic, output redirection • An Apple RAM tester. to any I/O slot, disassembly, register display and • Loading or configuration of a printer spooler. alteration, and program execution are exactly as • A disk disassembler. described in Chapter 3 of the Apple II Reference The RAM testers are run in an identical fashion - Manual.

259 Expanding and Networking Microcomputers

Single stepping is obtained by successively pres­ Function Switch Description sing the S key, and would continue as long as the program remained within the address match range. Address AO These tell the ICE /I card what initial address to Match A1 look for. When match occurs between current Outside this range the program executes at full A2 Apple address and this address (plus those result- speed, so it is easy to set the switches so that, say, A3 ing from the Address Qualifier switches), together a section of program executes at full speed but a with the appropriate MCQ switches, the card A13 produces a trigger pulse (indicated by the green certain subroutine single-steps, or vice versa. A14 LED) which may cause IRQ, NMI or RESET, as In fact, at any stage the switches can be reset to A15 determined by the Output Function Switches. new values and, of course, the register values can be changed. Address XO These determine which bits set by the Address The T (Trace) facility works in an exactly similar Qualifier X1 Match are to be included in the address com- X2 parison. If address qualifier bit= 1, corresponding manner, and effectively provides a continuous single­ X3 address bit is included. If qualifier bit = 0, the step function. However, one very nice feature is that address bit becomes a "don't care': X13 the speed of the trace can be regulated by pressing X14 the number keys 0 to 9, resulting in about 13 to 0·6 X15 instructions per second, respectively. Output ilRQ Logic 1 enables IRQ and NMI from the target (via When ititially entering the H command, if the Functions iNMI the ICE header) to route to Apple for servicing. Address Qualifier switches are set to $FFFF (match iRES 1 reset on 1 resets o 1 resets on a single address), the program obviously sees RAI 1 target 0 target 1 resets 1 Apple & the address set on the Address Match switches as a OV o resets Apple 1 board 1 Apple 1 target breakpoint. The switches could then be altered to aRES Apple receives a RESET when address match allow single-stepping or tracing as before. triggers. Since these facilities are hardware-based, it can be alRQ Apple reGe1ves an IRQ when address match triggers. very instructive to trace through a BASIC program, aNMI Apple receives an NMI when address match especially when the output is directed to the printer triggers. for a hard copy. Machine cycle RDY Connects RDY on 6502 to ICE header to extend An Access Address facility is provided which qualification read cycle. allows the ICE II board to monitor the address of and enable EN02 Enable fb2: enables state to fJ2 to be included into (MCQ) 02 address match (e.g. set fJ2= 1 for valid address on any instruction which accesses a particular memory bus). location. ENRW Enable RW: enables state of RW to be included into RW address match (e.g. set RW= 1 for memory read The Address Match and Address Qualifier switches operation l. are set as for a break-point - for example, when set ENS Enable SYNC: if SYNC jumpered to 6502, this may at $02F8 and $FFFF respectively, we would be SYNC be included into address match (S YNC = 1 for opcode fetch). monitoring access of memory location $02F8. BDEN Board Enable: logic 0 enables address comparator, The Output Functions switches would be set at and red LED illuminates. $80 to again access the appropriate routines via an Apple NMI and, with the MCQ switches set at $OE we would be matching only on a write operation. Of course, we could equally well set MCQ=$1E for a read-only access, or $06 for all accesses of the Fig. 71 Debug function switches chosen location. The debug command Y is entered to point to the access routine, then the program is executed using the command G. Two facilities that are no longer available as The screen might then show, for example, 02F8 standard are STEP and TRACE. These are so vital ACCESSED FROM (-1INST) 0849, together with a for program development that Rovino has provided dump of all the registers and a CIS prompt for a comprehensive single-step and trace facility, linked continuing or stopping program execution. to the function switches described in Fig. 71 The reason why the instruction after the accessing The board is first disabled, then the H (Halt) one is displayed is connected with the pipelined command is entered. Two options, TIS (Trace/Single­ architecture of the 6502, but this causes little difficulty step) are given to define what to do after the first in practice since, at worst, one has to disassemble a program interrupt (that is when an address match small region of code to identify the actual instruction. occurs). The debug command Q behaves in an exactly Suppose S is entered - the display responds with similar manner, except that a continuous printout of NMI - STEP/TRACE, showing that the NMI vector accesses is given (without the need for repeatedly has been set up. We now set the Address Match pressing the C key to continue execution) until CTRL­ and Address Qualifier switches to cover the required C is entered. memory range, the Output Functions switches to Another feature, similar to the above, is a Call $80 (that is the Apple receives an NMI when the Address facility. This is used to find the address address match occurs), and the MCQ switches to from where a particular subroutine is called (the $66 (for halting on an opcode fetch and enabling the address of the latter being entered on the Address board). Match Switches as before). It is accessed by the The program is now executed using the G debug commands X and P, and this time the MCQ command, and the display will show the instruction switches are set at $66 (for an opcode fetch). just executed, the resulting state of all the registers We no longer have the problem caused by the (including the individual flags of the status register), pipelining, since all JSR instructions are three bytes and the next instruction about to be executed. long, so the software can calculate the calling 260 Appendix 4 address without ambiguity. X again presents us with map, the corresponding facility for the ICE monitor the CIS prompt, and P lists the calling address is to transfer blocks of memory from the Apple to continuously until CTRL-C is entered. the target board, and vice versa. A final facility of the debug monitor is the data This is done using the ICE commands M and I, window. This allows 1, 2, 4 S ... 12S consecutive respectively. For example; SOO

261 Expanding and Networking Microcomputers should bear in mind that the delay only occurs for a include a zero page location solely to illustrate the very limited number of instructions - all the rest use of INTER1. execute at full speed. As it stands, the program in Fig. 72 runs entirely No mention was made above of the problems on the Apple. The next stage was to connect the ICE associated with Indirect addressing. It should be II board to the target SBC via the emulator cable apparent that, although the instruction itself is in the and header and utilise the target's zero-page RAM. Apple memory map, one may wish to utilise zero­ This was done by simply inserting JSR INTER1 just page locations in either the Apple or the target. before accesses to the zero page variable CNTR on Coupled with the fact that the effective address lines 22, 28, 34, 40, 46, 47 and 54 (having, of course, accessed by the indexed addressing may also be defined the interpreter by an equate, INTER1 EaU required in either the Apple or the target memory $9240, at the beginning of the program). map, it is necessary to provide interpreters to handle Next the I/O of the target board was utilised all eventualities - this is why the emulation of instead of the Apple's. This involved first of all indirect addressing may require one of three changing the addresses on lines 8 and 9 - PT1 PRB interpreters (lNTER1, 2, or 3). EaU $0921, and PT10RB EaU $0923. Then JSR The manual deals very thoroughly with this aspect INTER4 was inserted just before accesses to these and, in any case, the use of the wrong interpreter new I/O locations - on lines 17, 20, 26, 32 and 38 of usually causes an error message on the Apple the original program. screen. Finally, when the program is ready for transfer completely to the target SBC, all the JSR INTER1, A4.11 A SIMPLE APPLICATION JSR INTER4 instructions are removed. The program's origin is changed by altering line The best way to illustrate the application of the in­ 11 to ORG $F800 to suit the location of the SBC's circuit emulation is to consider a simple application, EPROM, the instruction OBJ $800 (say) is added to and the ubiquitous traffic light sequencer is ideal. define the location of the object program after Let us suppose that the lights are connected to a assembly, the stack is initialised by adding the typical I/O port, first of all on the Apple, then instructions LOX # $FF and TXS, and finally the ultimately on a target SSC. The emulation increas­ reset vector is defined by inserting 00 and Fa into ingly utilises more facilities of the target board as memory locations $FFFC and $FFFD, respectively. each stage of development is completed. When assembled, the object program is transferred The assembly language listing for the program is to an eprom using a suitable programmer, and this given in Fig. 72. Note that the program has not EPROM and a 6502 microprocessor are fitted to the been written with elegance or efficiency in mind ­ SBC. The program now runs on the target SBC as for example, the time delay routine was written to soon as the reset button is pressed.

262 Appendix 5 APPLE II COMPATIBILITY

A5.1 THE APPLE FAMILV lie auxiliary connector, and they are both simply memory boards - the 80-column display circuitry The Apple II was launched in the summer of 1977 and firmware being built into the motherboard. and was an impressive machine. It had BASIC in To maximise compatibility with existing software, ROM, its memory could be expanded to 48 Kb of the Apple lie 80-column firmware emulates an 80­ RAM and its open system architecture enabled it to column board installed in I/O slot 3, the standard be enhanced and refashioned in ways not imagined location. If one of the two 80-column option boards by its designers. is installed, typing PR#3 will activate the internal 80­ The Apple II Plus involved a relatively minor column routines and disable any firmware installed firmware modification to the original Apple. The in slot 3. The 80-column software is also compatible Integer BASIC and Monitor ROM chips on the with other languages, so Apple's Pascal 1·1 or an motherboard were replaced with Applesoft BASIC Apple II CP/M system can operate correctly without and an Autostart ROM. modification. The Apple lie (e for enhanced) was launched early Inside the Apple lie, the power supply is in 1983 and represented a very careful series unchanged, but there is one less expansion slot of improvements over the Apple II Plus, whilst since slot 0, which is used in the Apple II Plus for a maintaining a very high level of add-in and software 16 Kb RAM board, is now no longer required. This compatibility. In general, Apple II Plus add-in boards is because the RAM is now populated in the that occupy one of the I/O slots and do not connect motherboard. to an IC socket will operate correctly on the Apple In conclusion, most boards designed for the Apple lie. Others that connect directly to the motherboard, II Plus or the lie are compatible. The exceptions are or to the keyboard, will not be compatible without the 80-column boards designed for the lie's auxiliary redesign. The Apple IIc, the portable equivalent of slot, and any Apple II Plus board that connects to an the lie, was launched in April 1984 and unlike the IC on the motherboard. The Apple lie has a minor other models in the range is not capable of add-in modification in its interpreter which is unlikely to expansion. cause software incompatibility, although a software Examples of boards that will work in an Apple vendor should be able to supply a patch if required. lie include 80-column boards, serial and parallel interlaces, graphics tablets, memory boards and disk controllers that connect only to the bus and not to A5.3 THE FRANKLIN ACE 1000/1200 an IC socket. All existing video switches, joysticks and game controls may be used on the Apple lie. The Franklin Ace 1000 is designed to be functionally identical to the Apple II. It contains 64 Kb of RAM A5.2 THE APPLE liE ENHANCEMENTS and uses any Apple-compatible peripherals, including add-in boards. The Ace 1200 is an upgraded version The main features of the Apple lie are: of the Ace 1000 and includes a built-in disk * 64 Kb RAM expandable by bank switching to drive and controller, 80-column board, serial/parallel 128 Kb; interlace, 128 Kb of RAM and a high-speed Z80 * Upper and lower case screen characters, with board for running CP/M. descenders; The Franklin Operating System, F.DOS, is compat­ * New keyboard (upper/lower case with CAPS ible with Apple DO~, and now also includes the LOCK, OPEN APPLE and CLOSED APPLE keys, Monitor and the BASIC Language Interpreter. On four directional arrow keys, DELETE and TAB power-up, the Monitor and BASIC are loaded into are the main enhancements); RAM. On the Apple, this exists as ROM based * Expandable to 80 columns with full support in firmware, which Franklin was obliged to re-write so the display (HOME, Clear EOl, EOP, Scroll, as not to infringe Apple's copyright. Tab); Both the 1000 and 1200 incorporate a 50 W power * All previous software switches, and some useful supply with a built-in fan, and is said to be more new ones; robust than that on the Apple. The Franklin * Hardware diagnostics. motherboard is about 25% bigger than the Apple II In the lie, the monitor has been extended, although and contains eight slots, which are spaced further it maintains compatibility with most II Plus software. apart. This reduces the crowding that is a feature of The extensions have been placed on an additional the fully loaded Apple, but the connectors of the ROM and support enhanced screen editing, scrolling Franklin don't hold the boards as securely as the and clearing functions. Apple lie and can move from side to side slightly. The Apple lie offers two 80-column option boards: Franklin have also launched the CX-2M portable the 80-column text board and the extended memory micro which enables data produced on an IBM PC 80-column board, which includes 64 Kb of RAM. to be processed as Apple text on CP/M files, see Either of these boards can be plugged into the Apple Appendix A7.

263 Expanding and Networking Microcomputers

Appendix 6 IBM PC COMPATIBILITY

A6.1 THE PC MARKETPLACE Table 1 A software compatibility test TEST COMPATIBILITY LEVEL

There are currently over 80 different makes of RUN PC-DOS 2·0 Bios and DOS implemented in a microcomputers on the market which have some compatible manner to PC-DOS. level of PC compatibility. The advantages claimed RUN WordStar 3·30 WordStar 3·30 ignores the DOS and writes directly to screen; for these machines is that they offer more enhanced test of screen memory map. features than the PC, and they are cheaper. These RUN Lotus 1-2-3, Version 1·0 Also tests screen memory map enhanced features may include the use of Intel's but also expects to see the PC's more powerful 8086 processor, 3~ inch devices and disk controllers. 5~ RUN Microsoft's Flight Simu­ This program generates its own half-height inch drives that store twice as much lator hardware cells and ignores the information as the standard PC, and built in DOS; test of memory maps and communications peripherals. video controller compatibility. The disadvantage of the so-called PC lookalikes, RUN IBM's Advanced Diagnos­ A PC specific program which tics tests system memory (RAM and or compatibles, is that they may only run a sub-set ROM), graphics, keyboard, of software for the IBM PC. Further, the add-in monochrome and colour cir­ boards designed for the PC may be incompatible. cuits. Because IBM's ROM (Bios) The purpose of this section is to establish the cannot be copied without copy­ right infringement, a PC compat­ parameters for PC compatibility and to list those ible will inevitably fail this part machines which are known to offer the highest of the test, although the conse­ levels of compatibility. quences should not be import­ It should be remembered that most add-in products ant. comprise a software as well as a hardware element, RUN Keynote This program is used to redefine the standard keyboard by manip­ so thecriteria for compatibility for a board has to be ulating the Bios in RAM. If more stringent than for software alone. Further, the program works on a PC even though a PC lookalike may exhibit a high compatible, then its Bios should degree of compatibility with existing hardware/ match the PC's ROM addresses. software products it does not follow that new IBM PC product features will be compatible. (v) Add-in boards; a PC-compatible bus inter­ A6.2 TECHNICAL ASPECTS OF PC COMPATIBILITY face will use the PC's 8288 bus controller which determines the electrical character­ PC compatibility is a matter of degree, and is realised istics of data transfer in response to 8088 to the extent to which the microcomputer in question status information. Also an add-in board runs PC hardware and software products without may request service either by interrupt or modification. As IBM expand their range of micro­ DMA (direct memory access). computers, compatibility across IBM's product line will become increasingly difficult to emulate. Plug­ For software compatibility, the following issues compatible hardware achieves compatibility when are important: differences in the method of implementation are (i) The Bios, or basic I/O system, is a ROM transparent to the software and hardware. based firmware module which performs the Fig. 73 illustrates the requirement for hardware system checkout, initialisation of memory, and software compatibility at a number of levels. and controls peripheral interfacing for I/O For hardware compatibility a PC-compatible machine manipulation. It is a collection of routines should observe the following: and tables accessible through the software­ (i) An Intel 8088 at 4·77 MHz; although the interrupt features of the 8088. It cannot be 8088 is one of several compatible processors copied, that would infringe IBM's copyright, in the Intel family, there are differences in but it must be fully emulated. Because some the databus structure, the hardware interrupt aspects of the Bios documentation have not interface and the ability to interface with the been released, compatibility can only be 8087 numeric data processor. The processor assured through exhaustive testing by the reference clock frequency is important since manufacturer. some PC software and add-ins are sensitive (ii) PC-DOS; because PC-DOS (IBM's operating to the 8088's timing. system for the PC) and MS-DOS share the (ii) Memory map; must be a one to one same origins compatibility is not difficult. correspondence with the IBM PC for the The Columbia MPC, for example, uses a compatible I/O devices. When, for example, second Bios and modified MS-DOS source a software module writes data to video code to provide the necessary compatibility. memory, the display must replicate what (iii) BASIC; the PC has a BASIC interpreter would appear on the PC. implemented in ROM (BASICA). Many PC (iii) drive; must be compatible with compatible manufacturers prefer to those used in the PC (NEC 765 or Intel 8272). implement their BASIC in RAM for updating/ (iv) Keyboard; must replicate layout, particularly fixing purposes. This will involve modifying the function keys. Microsoft's BASIC interpreter (GW BASIC) 264 Appendix 6

and implementing a special Bios. Again selling software intended for the IBM PC, to use compatibility is only guaranteed after tho­ add-in boards designed for the PC and to read and rough testing. write to IBM PC disks. They must provide the same user interface for software documentation compatibility and usefulness. The tests detailed in Table 1 provide a good A6.3. SYSTEM COMPATIBLE MICROCOMPUTERS means for establishing compatibility and the prospec­ tive buyer should expect his dealer to run most of For the highest level of compatibility, PC lookalikes them. Machines which are known to offer the highest should be able to run without modification top level of compatibility are listed in Table 2.

Table 2 IBM PC lookalikes MODEL LIST PRICE PORTABLE HARD DISK EXPANSION SLOTS OPERATING SYSTEM SUPPORTED

IBM PC $3,245 10 Mb 5 PC& MS-DOS 1·10/2·00/2·10 IBM PORTABLE PC $2,750.J 7 PC-DOS 2·10* COLBY PC 3·2 $2,795 J 10 Mb 4 MS-DOS 1·10 COLUMBIA MPC $4,995 DESKTOP V MS-DOS 1·25 COLUMBIA VP $2,995.J 1 MS-DOS 1·25 -Plus $4,995 J 10 Mb 5 MS-DOS 1·25 SPERRY PC $3,119 DESKTOP 15·7 Mb 7 MS-DOS 1·25/2·00 TAVA PC $1,995 DESKTOP 10 Mb 5 MS-DOS 1·10/2·00 TeleVideo TPC-11 $2,995 V 10 Mb 1 Tele DOS 2·11 Visual Commuter $1,995 ..j 10 Mb 0 MS-DOS1·10/2·00/2·10 *The IBM Disk Operating System (DOS) 2·10 is the only IBM DOS version that supports the IBM Portable. PC-DOS 2·10 increases the formatted capacity of 320 Kb disks to 360 Kb.

PC lookalike

------~--_._------.-...;~------. I I HW/SW I HARDWARE (HW) SOFTWARE (SW) ! INTERFACE I "------.....------.~----_-.-.-_. __ ._--"------~---..-- ...... -----~

SYSTEM PHYSICAL BIOS OPERATING LANGUAGE 1 INTERFACE SYSTEM 7\ RE 1\ 1\ CPU MEMORY SYSTEM 1/0 BOOTSTRAP SYSTEM BASIC\ A MAP BUS (disk TEST COMPATABILITY screen keyboard) INITIALIZATION PC. DOS COMPATABILITY

SYSTEM BUS - 62 PIN EXPANSION SLOT CPU - INTEL 8088 at 4·77 MHz DISK - NEC 765 or INTEL 8272 CONTROLLERS Double-Density, Double-Sided diskettes (OOIDS) or Double-Density, Single-Sided diskettes (OOIDS) BIOS _. Maximum size 2K bytes

Fig. 73 IBM PC compatibility levels

265 Expanding and Networking Microcomputers

Appendix 7 IBM/APPLE COMMUNICATION

A7.1 INTRODUCTION into either mode provides immediate access to the Apple or IBM microprocessor. There are many instances where it may be desirable Quadlink format disks in a single-sided, 35-track to transfer files between the IBM PC and the Apple, format in its Apple mode, even when used with a particularly where the user has an Apple II at home PC equipped with double-sided drives. Either single and access to a PC at work. This section reviews or double-density disks can be used. The board three w~ys by which this transfer may be effected: comes with two disks: a Quadlink disk and a disk (i) using RANA 8086/2 disk drives on the Apple containing Apple DOS and BASIC. The system disk (ii) using Quadram's Quadlink board on the PC sets the Bios, see Appendix 6, and loads the (iii) via serial transfer using special programs on equivalent of the Apple II ROM monitor into the the Apple and IBM PC. special programmed-array-Iogic (PAL) chips on the board. PAL chips have been used to facilitate software protection - any attempt at copying one A7.2 THE RANA DISK DRIVE chip will cause it to erase itself. Perhaps the most important aspect of this product The Rana 8086/2 is a plug-compatible co-processor is that new features can be added via software and dual disk drive system for the Apple II. It upgrades from Quadram. The product is convenient enables the Apple to run MS-DOS software. The to use, fast and well supported by a committed Rana is able to read and run files for the IBM PC, as manufacturer. well as run programs based on Apple Operating Systems, such as ProDOS. A.7.4 IBM/APPLE COMMUNICATION VIA A SERIAL The Rana 8086/2 uses an 8086 microprocessor and LINK has double-sided drives providing up to 360 Kb of storage per drive. The co-processor portion has 256 This section, by Robert Jones, appeared in the Kb of RAM, expandable to 512 Kb. February 1984 issue of BYTE magazine, with the title 'IBM/Apple Communication'. Copyright © 1984 BYTE A7.3 QUADLINK Publications, Inc. Used with permission of BYTE Publications, Inc. Quadlink is a board which slots into the IBM PC, enabling it to read and write to Apple disks without A7.4.1 Overview needing to convert or reformat them. Functionally, it Perhaps there are some BASIC programs or files on is equivalent to an Apple computer on one board, an Apple II Plus or lie computer that you would like so that most programs designed for the Apple II to use on an IBM PC or XT without hav·ing to type family will be compatible with the IBMXT. them in all over again. Or maybe there is an IBM Quadlink allows use of all IBM add-on enhance­ file that you would like to massage with some Apple ments while running Apple-compatible software, software. The IBM PC and Apple versions of BASIC including monitors. An Apple program will appear are similar enough that, with only minor modification, on an IBM monochrome or colour monitor more many programs written for the Apple II will run on clearly than on the Apple monitor, even when high the IBM PC and vice versa. In this article I will resolution graphics are used. The Quadlink board outline a method and list programs that will allow has also a games port (both Apple and IBM you to transfer BASIC programs or data files between compatible), a display adaptor with five display ISMs and Apples quickly and easily. modes, including high resolution colour graphics, These programs assume that each machine has a IBM interface; disk controller and software. The serial I/O (input/output) board and that a 'cross-over retail price is $680 and this includes a manual, cable' (sometimes called a 'modem eliminator') links software and full documentation. the serial boards together. A cross-over cable has One limitation of this board is that the PC drives connectors on each end that join pin #2 of one cannot read Apple disk halftracks and some Apple serial connector with pin #3 of the other machine's programs are copy-protected by a system that serial connector. This cross-over of the data lines requires this facility. Although this restriction applies enables the data output from one machine to mostly to games software, several business-oriented become the input to the other. Cross-over cables programs use this method of protection. This is not are available from computer dealers at a nominal a difficulty if the procedure in the next section, A7.4, price. is used. These programs also assume that disk drives (as To initialise Quadlink, software from two separate opposed to cassette recorders) are used on each disks has to be loaded, in addition to the application machine and that a reasonably standard DOS (disk program(s). IBM programs may be run normally, operating system) is being used on each system. provided the board has been initialised, otherwise The programs run on the IBM PC and Apple II Plus some PC system commands behave oddly because and will probably run on the IBM XT and Apple lie they are processed by the Quadlink board before as well, because no unique features of these models they reach the PC bus. Once booted, Quadlink are used. operates simply; Quadram use Ctrl-Alt-I and Ctrl-Alt­ The user controls the operation of this data transfer A for IBM and Apple modes respectively. Switching from the keyboard of the receiving machine. This

266 Appendix 7 control is assumed once the sending machine's 100 REM APTOIBM RECEIVING PROGRAM FOR IBM --LISTING .. 2 110 REM BY ROBERT JONES AUGUST 3, 1983 program begins to run. The user runs the receiving 120 : 130 REM SOME DEFINITIONS program, supplying, when asked, the name of the 140 DIM XS (2000) file to be sent from the sending machine and the 150 EFS = ·XX·: REM END-OF-FILE FLAG 160 ONE = 1 name of the file under which to save it on the 170 : 180 WIDTH 40 receiving machine. The requested file is loaded into 190 ON ERROR GOTO 710 200 OPEN ·COMl:4800,E,7,1" AS .. 1 : REM SERIAL PORT a string array on the sending machine, sent line by 210 : line to the receiving machine's comparable string 220 CLS: LOCATE 1,7: PRINT "APPLE TO IBM TRANSFER PROGRAM": PRINT: PRINT 230 PR I NT "BE SURE THAT THE APPLE PROGRAM" array, then the string array is saved to a file on the 240 PRINT "IS RUNNING BEFORE YOU CONTINUE!": PRINT 250 INPUT "APPLE FILE NAME"; FAS receiving machine's disk drive. These programs use 260 IF FAS .. "" THEN PRINT "1, FAS : GOTO 660 a 4800-bps (bits per second) rate and a format of 7 270 INPUT "IBM FILE NAME "JFIS 280 PRINT data bits, 1 stop bit, and even parity. Set the 290 IF FIS ,., "" THEN FIS = FAS 300 : parameters on the Apple serial board and use the 310 PRINT "1, FAS: REM TELL APPLE THE FILE TO FIND 320 FOR J = 1 TO 750: NEXT J IBM program's OPEN statement to fix them for the 330 INPUT "1, NFS: REM SEE IF APPLE HAS FOUND IT PC's communications buffer. 340 IF NFS= "NF" THEN PR I NT • FILE NOT FOUND ••• REENTER NAME": GOTO 250 3~0 IF NFS = "FOUND" THEN GOTO 390 360 GOTO 660: REM ANY OTHER RESPONSE FROM APPLE 370 : A7.4.2 Apple-to-IBM Example 380 REM READ FILE FROM APPLE Suppose that you have a text file on your Apple but 390 PRINT: PRINT "READING FILE FROM APPLE ••• • :PRINT 400 .I .. 0: REM INITIALIZE COUNTER your IBM PC has some software that plots data for 410 I .. I + ONE: LINE INPUT .. ONE, XS (I) : IF XS (I) < ) EFS THEN 410 420 INPUT" ONE, AC: REM APPLE·S CHECKSUM you. The following instructions will send your text 430 N ~ I- 1: REM DROP THE END-OF-FILE SIGNAL FROM THE LIST 440 : 100 REM APTOIBM SENDING PROGRAM FOR APPLE - LISTING .. 1 450 REM COMPUTE LENGTH FOR CHECKSUM COMPARISON 110 REM BY ROBERT JONES AUGUST 3, 1983 460 PRItH "NUMBER OF LINES: • IN 120 : 470 FrU!T 130 HOME 430 r-~tNT "APPLE LENGTH:", AC 140 : 4?O F?!NT "IBM LENGTH :", ~~O 1~0 REM SOME DEFINITIONS rc = 0: FOR I =1 TO N: IC .. IC + LEN(XS(I»: NEXT I 160 DIM XS(2000) s i o PRINT IC 1:"0 SLOT .~: REM SERIAL PORT SLOT '520 IF IC= AC THEN 560: REM IF CHECKSUMS MATCH ~30 It-IPUT "CHECKSUM ERROR, CONTINUE? "JCNS:IF CNS "Y· THEN 650 180 DS m CHRS (4) < 190 EFS .. ·XX· ~40 : ~'50 200 DE = 1 FEM SAVE FILE TO I. B. M DISK 210 : 560 OPEN F!S FOR OUTPUT AS .. 2 220 : 570 FOR I = 1 TO N: PRINT "2, XS (I): NEXT I: CLOSE .. 2 230 LI .. 768: REM LINE INPUT ROUTINE seo : 5«;'0 I='EM ANOTHER FILE? 240 FOR I ... 768 TO 812: READ X: POKE I, X: NE:::7 PRINT: PRINT "DO YOU WANT ANOTHER FILE "J: INPUT ANSS 2~0 : eoo 610 IF ANSS "Y" THEN GOTO 650 260 REM GET NAME FROM IBM < 270 GOSUB 800 6::'0 PRINT "1, -MORE": GOTO 220 630 : 280 PRINT DS;·IN"·;SLOT: INPUT FAS: PRINT D.o'_WIC 290 PRINT 640 REM FINISH UP 300 IF FAS ... •• THEN 760 650 PRINT "1, "NO" 310 : 660 CLOSE .. 1 320 REM READ APPLE FILE FROM DISi< 670 PRINT: PRINT "NORMAL COMPLETION" 330 PRINT DS; ·OPEN .; FAS 680 END 340 PRINT DS; ·READ .; FA$ 690 : 700 REM ERROR HANDLER 350 ONERR GOTO 380 360 I .. 0 710 IF ERR = 24 THEN RESUME: REM AVOID TIMEOUT 720 PRINT "STOPPED BY ERROR NUMBER- JERRI" IN LINE -I ERL 370 I .. I + OE: CALL L..r.>:$(I): GOTO 370 730 CLOSE .. 1 380 PRINT D$; "CLC::;'E": FOKE 216,0:ER = PEEl< (222) 740 STOP 39" : 401) IF PEEr:: 22:: " ~ '3 THEN 490: REM END OF FILE FOUND 410 : 120 ~::M ERROR REPORT 43(' PRT!'!~ !lS; ·PR"·; SLOT: PRINT ·ERROR·: PRINT ns; "FRttO· file from the Apple II to the IBM PC. Listing 1 is the 440 IF ER = 107 THEN PRINT ·XS() IS TOO SMALL FOR F :LE.· 4~0 IF ER = 77 THEN PRINT ·FILE TOO LARGE FOR AVAILABLE MEMORY." APTOIBM sending program. Listing 2 is the APTOIBM 460 IF ERR .. 176 THEN ONERR GOTO 380: GOTO 370: REM LINE TOO LONG receiving program. Before running these programs, 470 GOTO 770 480 : be sure that the serial-board slot number for the 490 N = I - 1 500 : Apple is correctly noted in the Apple II program 510 REM N< 1 MEANS FILE NOT FOUND. ~20 IF 1'1)0 THEN 540 (that is, set SLOT equal to the slot number if it is 530 PRINT DS;·PR"·;SLOT: FRINT ·NF·: PRINT nS·PRMO: GOTO 270: REM NF other than slot #5). Check that your IBM PC serial 540 : 5~0 REM SEND FILE TO IBM board is configured as COM1: as specified in the 560 PRINT DS; ·FRM"; SLOT 570 PRINT ·F~UND" OPEN statement. COM2: can be used in the program 580 AC .. 0 590 FOR I ,., 1 T Q N by modifying the OPEN statement. Make sure that 600 PRINT X": I) there is sufficient disk space in the receiving machine. 610 AC = A: + LEN (XS(I»): REM APPLE CHECKSUM 620 NEXT I Run the program on the (sender) Apple II first. 6:':0 : ,~40 REM SEND END OF FILE FLAG TO IBM The message 'Waiting for instructions from the IBM 650 PR I NT EFS . .. ' should appear. Be sure that the file to be 660 : 670 REM SEND CHECKSUM FROM APPLE transmitted is on the disk in one of the Apple drives. 680 PRINT AC 690 PRINT DS; "PR.. O" Now run the IBM (receiver) program. When asked 700 : for the Apple filename, enter the name as it appears 710 PRINT : PRINT "WAITING FOR ANSWER FROM IBM••• • 720 PRINT DS;· IN"·; SLOT: INPUT ANSS: PRINT DS;· INMO· in the catalog of that, disk, including the drive 730 IF ANSS. • MORE• THEN 270 740 : specification, if needed (e.g., 'MYFILE, 02'). You will 7~0 REM FINISH UP 760 PRINT : PRINT ·NORMAL COMPLETION.· also be asked for the filename under which to save 770 END this file on the IBM PC. Be sure to give it a valid 780 : 790 REM SUBROUTINE FOR HEADING filename specification (e.g., 'B: MYFILE. OAT'). After 800 HOME : HTAB 10: PRINT ·APPLE TO IBM SENDING PROGRAM·: PRINT 810 PRINT ·WAITING FOR FILE NAME FROM IBM••• ·: PRINT pressing the Return key, you should see the Apple's 820 RETURN drive light go on as it searches for the requested 830 : 840 REM LINE AT 768 - 812 (CALL 768, ANYS) file. As the file is being transferred, it will be listed 850 DATA 32, 190, 222, 32, 227, 223, 162, 0, 32, 117, 253, 134, 253, 32. 57, 213, 165 8ltO DATA 253,32,82,228,162,0,160,2,32,226,229,160,0,165, 253,145 on the Apple's screen. When transmission is 870 DATA 131,200,165,111,145,131,200,165,112,145,131,96 completed, the lengths of the string arrays (contain- 267 Expanding and Networking Microcomputers

100 REM IBMTOAP APPLE RECEIVING PROGRAM --LISTING 1t4 ing the 'lines' of the files) in both machines will be 110 REM BY ROBERT JONES AUGUST 3, 1983 compared. If the lengths match, then the IBM will 120 : 130 REM SOME DEFINITIONS save the file. If the lengths do not match, then you 140 DIM XS(2000) 150 SLOT ... 5: REM SERIAL PORT SLOT will be asked to either save the file or abort it. Over 160 DS CHR. (4) 90 percent of the time, the lengths will match. If 170 EF -XX-: REM END FILE FLAG 180 DE = 1 they do not, there may have been a leading or 190 : 200 LI = 768: REM LINE INPUT ROUTINE trailing blank space in one or more of the lines or 210 FOR I ... 768 TO 812: READ X: POKE I, X: NEXT I 220 : control characters within the text. I would suggest 230 HOME: PRINT - IBM TO APPLE RECEIVING PROGRAM·: PRINT saving the transferred file anyway, then later 240 : 250 REM SEND FILE NAME TO I. B. M. searching for the cause of the problem. I have not 260 PRINT ·NAME OF I.B.M. FILE >.J 270 CALL LI, FIS yet had a discrepancy with a Visicalc file nor with a 280 IF FIS = "" THEN 330 text file containing only alphanumeric characters 290 PRINT -APPLE FILE NAME-; 300 CALL LI, FA. (such as those written with an Applesoft WRITE 310 IF FA. = "- THEN FAS ... FIS 320 PRINT statement). The files created by word-processing 330 PRINT DS; "PRIt-; SLOT: PRINT FIS programs are another story, however. These are 340 IF Fl. = -- THEN PRINT FIS: PRINT DS' ·PRltO·: GOTO 780 350 PRINT DS; -PRltO" best saved (despite any length discrepancies) and 360 370 REM GET RESPONSE FROM IBM edited later. 380 PRINT DS; - INIt·. SLOT 390 INPUT ERS: IF ERS .. ·FOUND- THEN 470 If the file to be transferred is not found on the 400 PRINT D.;· INltO· sending machine, then the user is informed and 410 PRINT 420 IF ERS = -NF· THEN PRINT -FILE NOT FOUND.·: GOTO 260 asked to enter the correct filename. The program 430 PRINT "CHECK IBM FOR ERROR MESSAGE.· 440 STOP 450 : 100 REM IBMTOAP SENDING PROGRAM FOR IBM --LISTING tt3 460 REM READ FILE INTO XS C) UNTIL END FLAG 110 REM BY ROBERT JONES AUGUST 3,1983 470 PRINT 120 : .:jSO I == 0 130 REM SOME DEF I N ITIONS 490 I == I + OE: CALL LI,XSCI): IF XS(I) < > EFS THEN 490 140 DIM XS(2000) 500 I NPUT I C : REM CHECKSUM FROM IBM 150 EFS ... -XX·: REM END OF FILE FLAG 510 PRINT DS,· INltO· 160 DLY .. 500: SHDLY .. 50 : REM DELAY BETWEEN LINES AND AFTER 40 CHARS. 520 N == I- 1: REM ELIMINATE END OF FILE FLAG 170 ONE = 1 530 PRINT 180 : 540 : ~ 90 WIDTH 40: GOSUB 760 550 At =0 200 ON ERROR GOTO 800 56C' REM COMPUTE NUMBER OF CHARACTERS RECEIVED 210 OPEN ·COM1:4800,E,7,1- AS ttl: REM SERIAL PORT 570 FOR I == 1 TO 1'1:AC = AC + LEN (XS CI ) ): NEXT I 220 : 580 PRINT· IBM CHECKSUM = -IIC 230 REM GET FILE NAME FROM APPLE 590 PRINT ·APPLE CHECKSUM" - lAC 240 INPUT ttl, FIS 600 PRINT 250 IF FIS = -. THEN GOTO 680 610 IF IC ... AC THEN 680 260 OPEN FIS FOR INPUT AS tt2 620 : 270 : 630 PRINT "CHECKSUMS DO NOT MATCH.· 280 REM SEND FILE TO APPLE 640 INPUT ·CONTINUE ANYWAY ?·ICAS 290 PRINT Itl, "FOUND- 650 IF CAS'" > -Y- THEN 670 300 : 660 PRINT: GOTO 720 310 REM READ FILE FROM I. B. M DISK 670 REM SAVE FILE TO APPLE DISK 320 I = 0 690 PRINT DS; ·OPEN -IFAS 330 IF EDF C2 ) THEN 350 690 PRINT DS; -WRITE -.FAS 340 I = I +ONE: LINE INPUT 1t2, XSCI): GOTO 330 700 FOR I • 1 TO N: PRINT XSU): NEXT I 350 CLOSE 1t2 710 PRINT DS, ·CLOSE- 360 1'1 .. I 720 PRINT -ANOTHER FILE ·1 370 : 730 INPUT ANSS 38') REM SEND FILE TO APPLE 740 PRINT DS; -PRIt·. SLOT: PRINT ANSS: PRINT DS' ·PRltO· 390 PRINT 750 IF ANSS • > ·Y· THEN 230 400 PRINT ·SENDING-IN; ·LINES TO APPLE ••• ­ 760 : 410 CL .. CSRLIN 770 PRINT 420 IC = 0 780 PRINT ·NORMAL COMPLETION· 430 : 790 END 440 FOR I = 1 TO N 800 : 450 LOCATE CL +1,1: PRINT -LINE BEING SENT:"; I: REM LINE COUNT TO SCREEN 810 REM LINE INPUT AT 768 - 812 (CALL 768, ANYS) 460 L ... LENCXSCI»: IC .. IC + L : REM SUM NO. OF CHARACTERS 820 DATA 32,190,222,32,227,223,162,0,32,117,253, 134,253,32,57,213,165 470 FOR J .. 1 TO DL Y : NEXT J: REM DELAY BETWEEN LINES 830 DATA 253,32,82,228,162,0,160,2,32,226,229,160,0, 165,253, 145 480 FOR K ... 1 TO L STEP 40: REM 40 CHARACTERS AT A BURST MAXIMUM 840 DATA 131,200,165,111,145,131,200,165,112,145,131,96 490 FOR J ... 1 TO SHDLY: NEXT J: REM DELAY BEFORE EVERY 40 CHAR. BURST 500 PRINT Itl, MIDSCXS(I),K,40); 510 NEXT K may be halted by pressing the Return key instead of 520 PRINT ttl,: REM CARRIAGE RETURN TO END LINE 530 NEXT I specifying a filename. If the requested file can't be 540 : 550 REM SEND END OF FILE FLAG found, check the drive specification and the spelling 560 FOR J ... 1 TO DLY: NEXT J 570 PRINT ttl, -XX" of the filename and run both programs again. 580 : If the file contains more than the 2000 lines for 590 REM SEND CHECKSUM TO APPLE 600 FOR J = 1 TO DLY:NEXT J which X$O is dimensioned in all programs, then 610 PRINT ttl, IC 620 : dimension the X$O arrays in both programs to a 630 REM At·IOTHER FILE larger size. A dimensioned size of 2000 'lines' is 640 INPUT ttl, MORES 650 I F MORES < - Y· THEN GOTO 680 probably more than adequate for a file that fits into 660 G03IJB 760 : GOTO 240 : REM GET NEXT FILE NAME 670 : 25 to 35 Kb of available memory. If the file is too 680 PRINT : PRINT -NORMAL COMPLETION" : PRINT 6~C' : large to fit into the memory available, you will ;'01) REM FINISH UP receive an OUT OF MEMORY message on the :-'10 CLOSE Itl ""'20 ON ERROR GOTO 0: REM TURN THE ERROR TRAPPING OFF sending machine, and some major modification of 730 END 740 : both programs may be needed. Alternatively, you 750 REM SUBROUTINE FOR HEADING could break the file into smaller segments, transmit 760 CLS: LOCATE 1,13: PRINT - IBM TO APPLE· : PRINT PRINT 770 PRINT ·WAITING FOR FILE NAME FROM APPLE ••• • the segments separately, then rejoin them. 780 RETURN 790 : The FILE NOT FOUND, SUBSCRIPT OUT OF 800 REM ERROR HANDLER BI0 IF ERR'" 24 THEN RESUME : REM TIME-OUT ON COMl: RANGE, and OUT OF MEMORY errors are the only 820 IF ERR'" 53 THEN PRINT Itl, ·NF- : RESUME 240 : REM FILE NOT FOUND major problems I have encountered in the six B30 : B4') REM OTHER ERRORS months I have been using these programs. However, 850 PRINT ·ERROR • JERRI· IN LINE ·IERL 860 PRINT Itl, -ERROR .; ERR : REM LET APPLE KNOW I am sure that other errors could be encountered ­ 870 GOTO 710 there is always at least one more bug.

268 Appendix 7

A7.4.3 IBM-to-Apple Example the conversion switching, then run the program. On To send a file from an IBM PC to an Apple, see an Apple II Plus with a 16 Kb RAM card in slot 0, listings 3 and 4. Listing 3 is the IBMTOAP sending these changes are accomplished as follows: program. Listing 4 is the IBMTOAP receiving CALL - 151 to enter the monitor program. Run (first) the sending program on the C081 C081 read ROM (read-only IBM PC; then run the receiving program on the memory) and write to Apple. The operation is analogous to that of sending RAM files in the opposite direction (outlined previously) DOOO[DOOO. except that the transmission time is about one-third FFFFM copy Applesoft and as fast because of the delays Applesoft needs to monitor to RAM board process each string before receiving the next one. In C083 C083 select the RAM board fact, if a line contains more than 40 characters, a FD82: EA slight delay is needed while the Apple's cursor EA delete the lowercase returns to the left side of its 40-column screen. conversion Delay loops (e.g., FORJ = 1 TO DLY: NEXT J) are 3DOG warmstart DOS inserted in the appropriate places in the IBM sending Users who are familiar with EXEC files may want program. to create one with these commands in it. If you I have tried to keep these programs short and press Reset on the Apple, then ROM Applesoft (with straightforward so that you can easily tailor them to the lowercase to uppercase conversion reinstalled) your own needs. Presumably, similar programs again takes over. To return to the modified RAM could be written to transmit files between different monitor, just type PRINT PEEK (- 16256). microcomputers with similar serial connections. 5. Interested persons may want to add routines to handle other errors or long files. A large file, for A7.4.4 Notes on Using the Programs example, could be read and transmitted in blocks of 1. Sending an Applesoft program to the IBM PC 1000 lines, with appropriate delays for loading and requires that the program first be converted into a saving to disk between blocks. text file. The following is a one-line routine, entered 6. More memory for holding a file can be obtained as line number 0 (zero), to save the Applesoft on the Apple by using one of the DOS moving program in memory as a text file suitable for programs to relocate DOS to the RAM board (as transmitting to the IBM PC. Type it in, then type long as you are not using the RAM card for the RUN. You will be asked to name the text file for monitor modification mentioned in #4). A file as your Applesoft program. long as 35 Kb may be transmitted in this manner. o D$ = CHR$(4): INPUT Ordinarily, 50 Kb of memory are available to IBM PC "TEXTFILE NAME J"; F$: BASIC with this program in memory if 96 Kb or POKE 33,33: PRINT D$: "OPEN"; more are installed in the IBM. So the Apple's F$: PRINT D$; "WRITE"; F$: memory size is the limiting factor on the maximum LIST 1 - :PRINT D$; "CLOSE": file (or segment) size that can be transmitted. POKE 33,40: END Remember that a 35 Kb Apple file shows up as a Similarly, an IBM PC BASIC program can be saved 142-sector file on a catalog of an Apple disk. with the 'A' option so that it is stored in ASCII 7. Although a bps rate of 4,800 is used in the format instead of the tokenised form, e.g., use SAVE programs listed here, the Apple-to-IBM transfer could 'MYFILE', A. run at 9,600. The 4,800 limit is imposed by the rate 2. If you are transmitting the Visicalc file from the at which the Apple II can receive data using these Apple to the IBM PC, the direction indicator needed programs. If the few minutes of speed gain from the for the Apple II Plus version of Visicalc will cause a Apple to the IBM is worth the time spent setting up problem (i.e., horizontal or vertical movement on the Apple serial board for the faster bps rate, then the arrow keys). This information is stored near the the IBM receiving program could use a 9,600 (instead end of the Visicalc file as either '/XI' or '/X-'. It of a 4,800) bps rate in the OPEN statement. However, must be deleted before you attempt to load it into you would have to reset the Apple serial board to the IBM version of Visicalc. Failure to delete this 4,800 again if you were going to pass programs command could cause a loss of data in the in from the IBM to the Apple. The constant switching which the cursor is positioned when the file is of bps rates is probably not worth the effort unless loaded by IBM PC Visicalc. it can be done within the Apple programs themselves. 3. To transfer a random-access file, I suggest first The manual for the serial board that I use does not converting the data in the random-access file to a explain how to do this on the Apple. sequential file, transmitting the sequential file, then 8. Because Applesoft does not have a LINE INPUT converting the data back into random-access form. statement (which allows commas and semicolons to 4. The monitor routine used by the Apple II Plus be included in a string being read), both Applesoft converts lowercase letters to uppercase letters. programs use a short machine-language routine This conversion presents a problem if maintaining (located at 768 decimal) to simulate LINE INPUT. lowercase is desired. One way around this is to The routine used here is slightly modified from "The write your own input routine in machine language. Penultimate Input Anything Routine" by Peter Meyer, A simpler way, if you have a language board, is to published in Call-A.P.P.L.E. In Depth 1: All About move the monitor (and Applesoft) to the RAM Applesoft, a publication of Apple Pugetsound Library (random-access read/write memory) board, eliminate Exchange, 21246 68th Ave. S., Kent, WA 98032.

269 Expanding and Networking Microcomputers

Appendix 8 LOCAL AREA NETWORK STANDARDS

For the past few years, the Institute of Electrical and Electronic Engineers (IEEE) has been working on standardising the designs of Local Area Networks. The IEEE was prompted to do this in August 1979 as a development on from their instrument bus standard IEEE 488, see Appendix 3. The first meeting took WORKING GROUPS place in February 1980 under the chairmanship of 802·' Companion Docu ment Maris Graube, Tektronix Inc. 051 link Since its inauguration, the Local Network Standards 802 -2 Log ica l link Co ntrol Level Committee (Project 802) has been meeting at regular I I intervals, and most of their work has now been ------approved in principal by ballot of IEEE members. 8023 802 4 8025 The International Standards Organisation (ISO) is CSM AICO Toke n Bus Token Ring M .A.N. 051 Physical now in the process of giving their approval to Project Level EJ- ~ 802's work, so making it a worldwide standard. Companies such as IBM, Hewlett-Packard, Hone­ ywell and Sperry Univac are involved in Project 802. Fig. 75 New Project 802 Committee Structure This means that the standards are less likely to be ridden roughshod over by larger computer manufacturers than has often been the case with As a result of the document, the Working Groups formalised standards before. were restructured, leaving much of the work to be At first, work by Project 802 was divided into three done on the standardising of higher protocol levels working groups, according to ISO's layered OSI to a later date. Six new sub-committees or Working reference model for networks. Working Group 1's Groups were formed (fig. 75). responsibility was to produce definitive standards Group 802.1, the Companion Document Working for a logical link control mechanism, whereby a Group, was given the responsibility of smoothly packet holds the names of its addressee and sender interfacing the OSI link and physical levels to the control information and the data to be transmitted: upper five levels. Their work has some way to go Working Group 2 was to produce standards for the before completion. accessing methods and physical specifications of Group 802.2 has produced a logical link control Local Area Networks. Working Group 3 was estab­ mechanism, reminiscent of IBM's HDLC format and lished just to provide guides for standardising the independent both of the levels of protocol' and higher levels of a local network. software above it, and of the accessing method used Xerox, Intel and DEC presented the specifications beneath it. The recommendations of Group 802.2 for Ethernet to the IEEE in May 1980, and this are now stable and accepted (Fig. 76). became incorporated in Project 802's work, along The remaining four groups are dealing with the with a token passing bus access method. Working OSI physical level protocols. They are divided Group 1 was split accordingly. This acceptance that according to accessing method. one standard alone would not be possible was quite a jump for the committee to make; there had been a (i) 802.3 CSMAlCD Group 802.3's work on CSMAI realisation that users in real-time process control CD networks has converged with Ethernet. A frame industries had different needs from those involved format (Fig. 77), operating speeds, distances and in office automation. In addition, the trio of cabling requirements have all been defined and companies behind Ethernet was too powerful to be agreed. The result is a superset of the ECMA ignored. (European Computer Manufacturers Association) By 1982 the token access method had been shown standard. The group is now going to consider other to be viable for ring topologies in addition to bus­ areas within CSMA/CD. based systems. Project 802 published in May 1982 an internal working document (Draft C) to indicate (ii)802.4 Token Bus Like Group 802.3's proposals, their interim conclusions, including the acceptance the token bus recommendations of Group 802.4 are of token passing rings (fig. 74). for both broadband and baseband systems. Logical link control frames are included in the token bus frame format as they stand (Fig. 78). The token mechanism gives all network stations a guaranteed chance to use the network with predictable worst l og ical Link Contr ol 051 case delays. It also provides a priority mechanism I link level I such that there can be different levels of service ------offered by the network. CSMAICO ~- Token (Etherne t) Bus Ring 051 Phy sical level (iii) 802.5 Token Ring Group 802.5's Token Ring proposals have experienced more difficulty in the approval stages due to the desire to transmit data with the most significant bit first and least significant Fig. 74 Draft C structure bit last. This is for technical reasons, and happens 270 Appendix 8 to conform to work the other American standards Group 802.5's work (Formats - Fig. 79) shows institution (ANSI) is doing on a 50 Mbit per second evidence of influence from IBM, whose proposed ring standard. Unfortunately it is the reverse of what network is described in Appendix 2. The specification Groups 802.3 and 802.4 have suggested. Their hands is for a 1 Mbit per second or 4 Mbit per second were tied by the way current network chips happen baseband ring using twisted pair cabling. to be designed and manufactured.

Destination Source Service Service Control Information Access Access Field Field Point Point

~ y Addressee Sender Data Fig. 76 Logical link control frame format

Source Start of Destination Cyclic Node Preamble Frame Node Length PAD Redundancy Delimiter Address Address Check on network on network

Fig. 77 CSMA/CD frame format

Destination Source Start of Cyclic End of Access Node Node Preamble Frame Redundancy Frame Control Address Address Delimiter on network on network Check Delimiter

Fig. 78 Token bus frame format

Starting Access Ending Delimiter Control Delimiter

Token Format

Destination Source Frame Starting Access Frame Node Node Data Check Ending Frame Delimiter Control Control Address Address Sequence Delimiter Status on network on network

Frame Format

Fig. 79 Token Ring formats

271 Expanding and Networking Microcomputers

(iv) 802.6 Metropolitan Area Networks Work 802.4 Token Bus of Group 802.6 into Metropolitan Area Networks is George Jelatis still at an early stage. The group's intention is to Honeywell CTC produce standards which make use of cable television 10701 Lyndale Ave South technology in cities. Bloomington, MN 55420 Further details about the IEEE local network (612) 887-4361 standards may be obtained from the various committee chairmen directly. 802.5 Token Ring Robert Donnan Project 802 Chairman IBM Corp, Dept E87/B651 Maris Graube Box 12195 Tektronix Inc Research Triangle Park, Box 500, DIS 50-473 NC 27709 Beaverton, OR 97077 (919) 543-0053 (503) 627-7111 802.6 Metropolitan Area 802.1 Companion Document Network (MAN) William Lidinsky James Mollenauer Bell Telephone Labs Codex Corp Naperville-Wheaton Rd 20 Cabot Blvd Naperville, IL 60566 Mansfield, MA 02048 (312) 979-6246 (617) 364-2000

802.2 Logical Broadband Technical Link Control Advisory Group David E Carlson Mark Stahlman Bell Telephone Labs General Instrument Corp LZ-3E314 1775 Broadway 307 Middleton-Lincroft Rd New York, NY 10019 Lincroft, NJ 07738 (516) 733-3003 (201) 576-3516 Fiber Optics Technical 802.3 CSMAICD Advisory Group Don Loughry Richard Read Hewlett-Packard Co Cincinnati Milacron 19420 Homestead Rd, Mason Rd & Rte 48 Lebanon, OH 45036 Bldg IND-47L (513) 494-1200 Cupertino, CA 95014 (408) 257-7000

272 Appendix 9

GLOSSARY accumulator on which data is entered from a peripheral device A device which serves as a holding register for for later processing by the computer. arithmetic, logical and I/O operations. See register. bank switching acoustic coupler See paging. A device that permits the use of a telephone handset as a connection to a telephone network for BASIC data transmission by the use of sound transducers. Beginners All Purpose Symbolic Instruction Code, See transducer. a high level language with a simple syntax and a small repertoire of commands widely used in address microcomputers. See high level language. A character or group of characters that identifies a register, a particular part of storage or some other batch mode data source or destination. A method of computer operation in which the transactions are collected into a batch and processed ALGOL in one computer run. Compare interactive. ALGOrithmic Language, a programming language much favoured by early computer scientists, similar baud to PASCAL which has now replaced it in popularity. A measure of signalling speed in data communi­ See PASCAL. cation networks. The speed in bauds is equal to the number of discrete conditions or signal events per alphanumeric second. For example, one bit per second in a train Pertaining to a character set that contains letters, of binary signals. Since the baud is a measure of all digits and usually other characters e.g. punctuation the signalling elements transmitted, including those marks. used to coordinate transmission as well as the actual message transmitted, it is not necessarily equal to ALU the data signalling rate. See bit. Arithmetic Logic Unit, the unit of a CPU in which arithmetic, logic and related functions are performed. binary notation See CPU. A notation used when information is stored, communicated and processed in a computer system. application software It comprises sequences of bits which can represent Programs written for a specific user application. numbers or alphanumeric characters. See alphanu­ Compare utility software. meric, bit.

ASCII bit American Standard Code for Information Inter­ Binary digiT, a digit used in binary notation which change. A standard data transmission code that was can only take one of two values, usually designated introduced to achieve compatibility between data 10' or 11'. See binary notation. devices. It consists of 7 information bits and 1 parity bit for error checking purposes thus allowing for 128 black box code combinations. A device or system with accessible inputs and outputs but where the internal functions are hidden. assembler A translator that converts a low level language block structure program to machine code. See low level language, A technique in computer programming in which a machine code, translator. program is segmented into blocks of information or subroutines. asynchronous Pertaining to actions and events that are not bootstrap correlated with some reference time. A technique or device designed to bring itself into a desired state by means of its own action, e.g. a autodial machine routine where the first few instructions are A device on a videotex terminal that automatically sufficient to initiate loading action of a loading dials a prerecorded telephone number for connection routine into the computer from a peripheral device. to a videotex computer. See videotex. bubble memory backing storage A solid state storage device utilising microscopic An intermediate storage medium, e.g. floppy disk, magnetic domains in an aluminium garnet substrate. 273 Expanding and Networking Microcomputers

The contents are not lost when the power is CPU removed. See central processing unit. buffer CRT An area of storage temporarily reserved for an I/O See cathode ray tube. operation into which data is written and later read out. cut/paste A facility in a text editor which allows a portion of bug text to be deleted from one place and reinserted in An error in a program or system. See debug. another. See editor. bus daisy chain An electrical connection between the components A -series arrangement of functional units; for of a computer system along which data is transmit­ example a chain of disk drives connected together ted. by cable with only the first drive in the chain connected to the peripheral controller. byte The smallest addressable unit of storage in a daisy wheel computer memory, usually 8 bits long. See bit. A print element used in conjunction with a daisy wheel printer. The daisy wheel is a removable flat C disk with spokes radiating out on stalks from a A programming language similar to PASCAL but central hub. more flexible and it allows the user to access hardware features. See PASCAL. database A collection of interrelated data stored so that it cache may be accessed by authorised users with simple A high speed memory device used as a temporary user friendly dialogs, or the information contained holding store. in it processed by a variety of independent application programs. CAD Computer Aided Design, the use of computer data management processing and graphics facilities to assist engineer­ The organisation and performance of functions ing· designers. that provide for the creation of stored data, access to it, regulation of I/O devices and the enforcement of data storage conventions. cassette A case for a magnetic tape in reel to reel format. data processing The systematic performance of operations on data cathode ray tube to achieve a desired objective. These operations can A device that coverts electrical signals to a visual include the handling, merging, sorting and computing display. of data. central processing unit debug The unit in a computer which contains the circuits The detection, isolation and correction of a mistake to control and perform the program instructions. in a or the computer system itself. chip A small integrated circuit package containing many demultiplexer logic elements. A unit that divides one or more information streams into a larger number of streams. Compare COBOL multiplexer. COmmon Business Oriented Language, a high level language designed for business data appli­ delimiter cations. See high level language. A specified character used to denote the end of a field. See field. compiler A translator which translates the whole high level descender program prior to execution. Compare interpreter. In fonts, the lower portion of the letters g, j, p, q, See translator. y. See true descenders.

CP/M digipad An operating system developed for Z80 and 8080 An input device on which free hand drawing is based microprocessors and a very common system translated into digitised form. The resulting image is in the business microcomputer field. See operting displayed on a VDU screen and may be permanently system. stored. See VDU. 274 Appendix 9 direct access file Pertaining to the ability to obtain data from a A collection of records which are logically related storage device, or to enter data into a storage device to one another and handled as a unit, for example, in such a way that the process depends only on the by giving them a single name. See record. location of the data. Compare serial access. firmware directory A program or data which has been permanently A file that contains details of all other files stored in a computer memory, Le. in ROM. See contained on a storage disk. ROM. disk drive fixed length record A peripheral which reads information onto, or A record which always has the same length as all from, a magnetic disk. See floppy disk drive, floppy other records with which it is logically or physically disk, hard disk. associated. Compare variable length record. See record. DOS Disk Operating System. See operating system. flatbed Pertaining to any printing or graphic plotting dot matrix device with a hard flat surface to hold the paper. A two dimensional pattern of dots used for constructing a display image on a screen or printer. floppy disk Compare fully formed character. A thin flexible magnetic disk and a semirigid protective jacket in which the disk is permanently double density enclosed, used for backing storage. Compare hard Pertaining to floppy disk systems which use a disk. See backing storage. modified frequency modulation technique to increase the packing density. See packing density. floppy disk drive A peripheral storage device into which a floppy download disk may be inserted and from which data may be To transfer data or programs into a computer read or written to. from an external device. font dp See data processing. A character set of a given size, style and face. dump FORTRAN A bulk transfer of data from one medium to FORmula TRANslator, a high level language used another, e.g. to transfer the contents of a portion of principally by engineers and scientists. See high main memory to a printer. level language. editor fully formed character See line editor, screen editor. Pertaining to printers that produce an individual character display with a single action. Compare dot eight bit, 8 bit matrix. Pertaining to microprocessors that operate with an 8 bit word. Compare sixteen bit. See word. garbage collection An expression for collecting dead records from a EPROM file or rearranging storage with the deletion of Erasable Programmable Read Only Memory, a unwanted items. form of PROM that can have its storage contents erased, in a special device, and then used again. GIGO See PROM. Garbage In Garbage Out, a computing adage reflecting the fact that the quality of the output of a fan fold computer is dependent upon the quality of the input. A method of folding paper in which each fold is in the opposite direction to the previous one. A printer can be fed with fanfold paper without continuous handshake operator intervention. A technique used in data communication in which an exchange of predetermined signals occurs when field a connection is first made across an interlace in An element of a record. See record order to confirm that it is working satisfactorily, and to prevent data loss. FIFO First In First Out, a storage strategy in which data hard copy items are retrieved in the order in which they were Output in a permanent form, usually printed on stored. Compare LIFO. paper. Compare soft copy.

275 Expanding and Networking Microcomputers hard disk Hz A rigid magnetic storage disk which is capable of Hertz, a unit of frequency corresponding to one storing more data and being accessed more quickly cycle per second. than a floppy disk. Compare floppy disk. IEEE Standard 488 bus hard sector A standard microcomputer bus, for the intercon­ Pertaining to a floppy disk which is physically nection of peripheral unit, first issued by Hewlett­ divided into individual sectors by a series of holes Packard. See bus. punched through the disk. Compare soft sector. immediate access hardware Pertaining to a main store with a very fast access. A term used to describe physical equipment such as disk drive, CPU, printer etc. Compare software. implied memory addressing A technique in low level language programming hardwired in which an actual address is derived from infor­ The implementation of a computer facility using mation held in registers as well as the instruction. logic circits (hardware) rather than by using software. See hardware, software. input output Pertaining to operations in which data is entered header into, or read from, the computer. The first part of a file containing information on the contents of the file necessary for operating intelligent terminal system functions. Also used for the first part of a A terminal with a microprocessor, and RAM, which message or packet, in a data communication system, enables it to process data, either received or to be which contains all the information necessary for transmitted. See microprocessor, RAM. directing the packet to its destination. See file, operating system, packet switching. interactive A conversational type system in which a continuous help dialog can take place between a user and the A facility provided by some software packages computer. Compare batch mode. which enables the user to obtain information on certain aspects of the package during operation. See 1/0 software. An abbreviation for input output. hex 1/0 controller See hexadecimal. The unit that enables the CPU to transfer data to, or from, a peripheral device. hexadecimal A numbering system with a radix of 16. This 1/0 port system is used because a byte, comprising 8 bits, A special chip which sits on the CPU data bus, can be conveniently expressed as 2 Hex digits. Digits enabling an external device to be connected to the between decimal 10 and 15 are represented by the computer for input output operations. See CPU, bus. letters A. to F. interpreter high level language A translator that intermingles translation and A computer language that enables the programmer execution. Compare complier. See translator. to specify a set of instructions in a form geared to the nature of the problem rather than the detailed interrupt operation of the computer. Compare low level A facility that enables a CPU to handle concurrently language. a number of input output devices on a priority basis. An interrupt is sent from an I/O device to the CPU high resolution requesting action. The CPU will suspend execution Pertaining to computer displays that are capable of a current task, transfer control to a specified of providing reasonable quality line drawings as location in memory which then calls a routine to well as text. deal with the interrupt. On completion, control is returned to the interrupted taks. See CPU. host Pertaining to a computer in a network that Kb See kilobyte. primarily provides services such as computation, database access or special programming languages. key One or more characters used for identifying as set housekeeping of data. Supporting operations that are secondary to main processing activities, e.g. taking back up copies of KHz disks. 1000 Hertz. See Hz. 276 Appendix 9

kilobyte low level language 1024 bytes, Le. 10 000 000 000 bytes in binary A computer language that is closely related to the notation. See binary notation, byte. machine code language of the computer, i.e, one that is translated by an assembler. Such languages label allow programmers to specify machine code instruc­ One or more characters, or a symbol, used to tions without many of the problems of working in identify a computer program statement. machine code itself. Compare high level language. See machine code. LAN See local area network. low level programming See low level language. LCD Liquid Crystal Display, a visual display device, machine code commonly used in pocket calculators, manufactured The binary format of instructions that are directly from two glass plates sandwiched together with a acceptable to the CPU. See binary notation, CPU. special fluid. Compare LED. magnet disk LED See floppy disk, hard disk. Light Emitting Diode, a visual display device comprising diodes which glow when supplied with mainframe a voltage. Compare LCD. A term applied to a major computer system. Compare minicomputer. LIFO Last in First Out, a storage strategy in which items Mb See megabyte. are retrieved such that the retrieved item is the last one that was stored. Compare FIFO. See stack. megabyte 1,048,576 bytes. Compare kilobyte. See byte. light pen A light sensitive device that is shaped like a pen memory and connected to a VDU. The light pen contains a The part of the computer that receives data from light sensitive element and when the tip is placed the CPU in the form of bits and stores it for later against the screen, it will register a pulse from the use. scanning spot. A coincidence pulse is generated from which the computer can identify the location menu on the screen. See VDU. A display of a list of available functions on the screen for selection by the operator. line editor In operating systems, an editor in which the user microelectronics can only modify text on explicitly selected lines. Pertaining to electronic devices manufactured with Compare screen editor. See operating system. semiconductor circuits contained in minute packages. See chip. line printer A printer that effectively prints one horizontal microprocessor line of characters simultaneously. Compare serial A complete CPU held on a single chip. See chip, character. CPU. listing A printout of the instructions contained in a source minicomputer program. See source program. A term first used to distinguish smaller computers from mainframes. There is no universally accepted definition of a minicomputer but they are usually literal faster and more powerful than microcomputers with An item in a computer program that contains a a capability of supporting several simultaneous value rather than an address of the value. users. Compare mainframe. local area network mips A high bandwidth computer network which oper­ Million instructions per second, a measure of ators over a small area, typically an office site. computer power loop modem A sequence of instructions, in a program, which is MOdulator DEModulator, a device that modulates repeated until some specific condition occurs. a signal to be transmitted over a communication line and also demodulates the received signal. This lower case modulation converts the signal from a form suitable The small letters in typefaces a, b, c etc. Compare for communication in the computer into a form upper case. suited to the demands of the communication line. 277 Expanding and Networking Microcomputers mouse complete message is assembled into one or more An input device used to manipulate text or items self-contained packets that can be sent independently on a screen display, or to input lines in a graphic through the network, collected and then re-assembled display. The palm sized unit contains buttons for into the original message at the destination. control actions; it is rolled over a tablet surface and the movement of the underside ball is monitored packing density and fed to the computer. The numbers of bits that may be stored per unit length of the recording medium. MS-DOS An IBM operating system. See operating system. paging (1 )The transfer of pages of data or instructions multi-access See multi-user. between main memory and backing storage. (2)1n microcomputers, a technique which allows the CPU multiplexer to access a large RAM store when the addresses in A device which takes a number of channels and the instruction set are limited to a lower value e.g. combines the signals into the common channel for 64 Kb for an 8 bit processor. An area of memory, transmission. Compare demultiplexer. l.e, a page, is first selected and the instruction address then accesses cells within that page. See multitask virtual storage. A computer system that is capable of performing a number of different tasks apparently simul­ parity error taneously. In fact each task is allocated a small time An error which is detected when the number of slice in sequence. bits in a set of data, e.g. a byte or a word, have an odd (even) sum for even (odd) parity. Parity checking comprises counting the number of bits in the set of multi-user data and adding a bit, if necessary, to make the total A computer system which can support a number even (odd) for even (odd) parity checks. Subsequent of concurrent terminals, the users may be involved checks on the state of the sum of bits can then in identical tasks, e.g. airline bookings or on detect the loss of an odd number of bits during differents tasks. See multitask. transmission or processing. NCC PASCAL National Computing Centre. A block structured high level language favoured by computer scientists for its compatibility with number crunching structured programming. See block structure, high Pertaining to computer processing activities which level language. involve a high proportion of mathematical operations on the data, usually arising in scientific applications. peripheral Such applications make heavy use of the CPU and A device to perform an auxiliary action in a involve comparatively few I/O operations. Compare computer system e.g. I/O, backing storage. See data processing. See CPU. backing storage. object program phantom ROM A program that is the result of a translation See shadow ROM. process. Compare source program. See translator. phoneme off line A primitive unit of auditory speech in a given Pertaining to equipment that is not connected to a language. In speech synthesis phonemes are stored computer or network, or the operations performed as computer words and a logic device selects the on such equipment. Compare on line. phonemes and connects them to generate words and sounds. on line Pertaining to equipment that is directly connected pixel to a computer or network. Compare off line. The smallest element of a computer graphics display space that can be addressed. operating system A software package that controls the operation of user programs. Operating systems may typically PUM perform the supervision of I/O operations, allocation Programming Language for Microprocessors, a of storage etc. language which combines the advantages of ALGOL, FORTRAN and COBOL. OS See operating system. Portability packet switching The capability, to transfer a software package to a A method of message transmission in which each variety of types of computer. Software written in a

278 Appendix 9

high level language has a high degree of portability. request to send See high level language, software. A signal sent by a transmitting unit indicating that it is ready to send data. Compare ready to receive. power supply See handshake. A circuit for converting an AC voltage to low voltage DC in such a way that the output is regulated reverse video to minimise noise and voltage fluctuations. A VDU facility that enables all, or part, of the data to be displayed as a black image on a light PRESTEL background. See VDU. The UK public viewdata service. See viewdata. RGB program Red, Green and Blue, pertaining to the amplifiers A complete series of definitions and instructions, that drive the three electrons guns in a colour conforming to the syntax of a given computer cathode ray tube, and to the three types of phosphor language, that when executed on a computer will dots on the tube face. perform a required task. See syntax. ring programming language Pertaining to a computer network in which each See high level language, low level language. computer is connected only to its two neighbours. Compare star. PROM Programmable Read Only Memory, a form of ROM ROM that can be programmed by the user. Blank memory Read Only Memory, a storage device with fixed chips are purchased and the required data is input contents that can be read by the CPU but cannot be to the chip in a special device. Compare EPROM. modified by it. Compare RAM. See ROM. RS232 protocol A commonly employed interface standard for A formally defined set of conventions governing asynchronous data transfers between a microcom­ the format and control of I/O between two communi­ puter and its peripherals. The terms RS232 and cating systems. RS232C are now commonly considered to be synonymous. qwerty Pertaining to a conventional keyboard layout with ruler the keys q, w, e, r, t and y on the upper right hand A line across the top or bottom of a word side. processor VDU showing the tab and margin settings currently in force. See VDU. RAM Random Access Memory, a memory chip used screen buffer with microprocessors, information can be both read A buffer used to store the data that is displayed from, and written into, the memory but the contents on the screen of a VDU. See VDU. are lost when the power supply is removed. Compare ROM. screen editor In operating systems, an editor that allows the random access user to modify a page of text displayed on the Access to data such that the next location from screen by moving a cursor over the screen. Compare which data is to be retrieved is independent. of the line editor. See operating system. location of previously accessed data. Compare direct access, serial access. sector A portion of the track of a magnetic disk holding a ready to receive complete block of data. It contains the smallest unit A signal sent by a receiving unit upon receipt of a of data that can be directly accessed by the computer. request to send signal. Compare request to send. See track. See handshake. semiconductor record A material with a conductivity midway between A collection of related data treated as a unit, e.g. that of an insulator and a good conductor. The details of name, address, age, occupation and conductivity is sensitive to temperature, radiation department of an employee in a personnel file. and the presence of impurities. Such materials are Compare file. used in the manufacture of transistors, diodes, photoelectric devices and solar cells. register A high speed memory device of specified length serial access used for special purposes in the computer. See Pertaining to an access mode in which records are accumulator. obtained from, or placed in, a file in such a way that 279 Expanding and Networking Microcomputers

each successive access to the file refers to the next stand alone subsequent record in the file. Compare direct access. Pertaining to a system not connected into a See file, record. network or to a host computer.

serial character star Pertaining to a printer that prints one character at Pertaining to a computer network in which each a time. Compare line printer. computer is connected only to a central computer. Compare ring. shadow ROM A term used to describe ROM which may be statement switched out of memory space after its contents, A meaningful expression in a computer program e.g. operating system, have been loaded into the used to specify an operation and is usually complete microcomputer's RAM. By using shadow ROM the in the context of the language used. microcomputer may address its full capacity of RAM. subroutine sixteen bit, 16 bit A sequence of instructions to perform an action Pertaining to microprocessors that operate with a that is frequently required in a program or a set of 16 bit word. Compare eight bit. See bit, word. programs. soft copy synchronous Information displayed on a screen or in audio Pertaining to two or more processes that require format. Compare hard copy. common physical occurrences, e.g. timing pulses, for their operation. Compare asynchronous. soft sector Pertaining to a floppy disk in which one hole, on syntax the disk, is used to synchronise the beginning of the The grammatical rules governing the use of a data tracks. Each other sector is identified by a natural or programming language. recorded sector ·identification data. telesoftware software A technique for the transmission of software to an The programs, procedures, routines and possibly intelligent videotex terminal or to a microcomputer documents associated with the operation of a data programmed to emulate a videotex terminal. See processing system. videotex. software package Teletex A set of programs for a specific purpose. See An international business correspondence com­ software. munication service offered by common carriers. The terminals used are primarily sophisticated electronic source program typewriters and word processors. A program written by a user in a high or low level language, i.e, in a format prior to translation. terminal Compare object program. See high level language, An I/O device for transmitting and receiving low level language, translator. data on a communication line. In microcomputer applications it will comprise a keyboard, VDU and spooling any necessary communication interfaces. See VDU. Simultaneous Peripheral Operation On Line, the use of auxiliary storage when transferring data from thimble the processor to its peripherals. Thus in printing A printing element similar to a daisy wheel but operations the data may be rapidly transferred to bent into a cup shape. See daisy wheel. disk storage and from there fed to the slow printer whilst the processor is free to undertake other tasks. top down Pertaining to a method of designing a system, or spreadsheet a computer program, commencing with a simple A general purpose application program which overall structure, then successively refining each effectively provides a large grid for the entry of user subcomponent, in a similar manner, until a detailed data. Relationships may be specified between data structure is obtained. in sets of squares and data entered, or modified, in them will automatically produce, or update, output touchscreen data in corresponding squares. An. input device with which the user indicates a particular choice, or coordinate position, by touching stack an appropriate point on a VDU screen. Commonly A method of storing items of data in which the infrared lamps are affixed to a horizontal and a items are added to the end of list and retrieved from vertical side of the screen, producing a grid of rays, the same end, so that a last in first out strategy is infrared detectors are aligned on the opposite sides. employed. An interruption of the rays, by the user's finger, 280 Appendix 9 produces two signals corresponding to the horizontal variable length record and vertical coordinates for input into the computer. A record which can have a length independent of See VDU. the length of other records with which it is associated. Compare fixed length record. track A path along which data is recorded on a VDU continuous or rotational magnetic medium. Compare See visual display unit sector. video monitor transducer A device which enables a user to view computer A device that receives a signal in one physical output text or graphics. form and produces an output in another, usually electrical. videotex A generic term embracing viewdata and teletext. translator The latter method provides information with a similar A program that translates a user program from format to viewdata but the data is broadcast over one language to a lower level one. See assembler, TV channels. See viewdata. compiler, interpreter. viewdata transparent An interactive information system using a tele­ Pertaining to a process, or procedure, invoked by phone link between the user and a host computer. a user without the latter being aware of its existence. The user employs a special terminal or an adaptor Compare virtual. linked to a domestic TV set. See videotex. true descenders Descenders which are printed, or displayed, below virtual the baseline. See descender. Pertaining to a facility which is offered to a user as if it were a physical reality. Compare transparent. turnkey Pertaining to a complete system, hardware and virtual disk software designed for a specific user, the prime A virtual disk is a RAM pack which simulates the contractor accepting full responsibility for system storage characteristics of a disk drive, but gives design, supply of hardware and software, document­ much faster access to stored information. Virtual ation etc. See hardware, software. disks can considerably increase the speed with which programs that require many disk accesses may be executed. An agreed bar coding for product labels giving country of origin, manufacturer etc. virtual machine A system that gives the user the impression that it UNIX was designed for one specific user purpose. An operating system. See operating system. virtual storage UPC A large nominal main store is made available to See Universal Product Code. the user by mapping the virtual address onto the real address of backing storage. upper case Capital or large size characters. Compare lower VISICALC case. A spreadsheet program. See spreadsheet. user friendly visual display unit Pertaining to any system designed to be used A device that enables a user to view computer without extensive operator training and which seeks output text or graphics and to input data and to assist the user to gain maximum benefit from the commands via a keyboard. system. Winchester utility software Pertaining to a class of sealed hard disk drives with Programs supplied for common routine tasks, e.g. a close tolerance high performance characteristic. See copying files. Compare application software. hard disk. variable write permit A quantity that is named in the program and can A mechanism by which a device is enabled to assume any value, within the valid range for its write to a disk or tape. Storage media may be type, and may be operated upon by any valid protected against accidental overwriting by removing operator for its type. this facility.

281 Expanding and Networking Microcomputers

word WYDINYA A group of bits, bytes or characters, considered as A prefix which is followed by a suggestion. In an entity and capable of storage in one memory microcomputers it is invariably employed by the location. See bit, byte, memory. first observer of a recently completed software package. The suggestion usually relates to a minor workstation cosmetic improvement in the screen display which A self contained system for local word or data would necessitate a total restructure of the whole processing. program.

282 Appendix 10 Antex Data Manufacturers' Products ADS-5000 ADS-8211 3 Com Etherlink Apparat Combo II Card 3-D Digital Design and Development PROM Blaster 3D/24BDI0 RAM Card Intelligent Instrumentation Model 1104 XAD1 Apple Computer XAD2 80-Column Test Card Apple Hobby/Prototyping Card Abacus Enterprises Communications Interface Card Know-Drive IEEE-488 Interface Card Parallel Printer Interface Card ABM Computer MEM 512 Applied Analytics OMNI-board MicroSPEED PS-ICP PS-SC2 Applied Engineering PS-UC2 8-Channel Signal Conditioner Superboard 12-bit AID Board AID Board Adaptek Super 1/0 Board ACB-2000 Super Music Synthesiser ACB-4000 Timemaster II ACB-5500 Z-80 Plus

Advanced Logic Systems Applied Business ADD-RAM Half-Mb Dynamic Memory CPIM Card I/OA+ Dispatcher Mega A+ PrinterMate Smarterm II Applied Logic 512 Kb Dynamic RAM Advanced Microcomputer Memorymaster lie PROM-2000 Ariel Amdek RTA 331 DVM-80e DVM-II AST Research Multiple Interface Adaptor AST-3780 AST-5251 Adwar Video AST-BSC Communications Apple Proc Mod AST-PCOX ARS-170A AST-SNA Communications CC-232 Multi-Protocol Card Advanced Logic Combo Plus Z-Card II 1/0 Plus II Megaplus II ALF Products MP Expansion Memory MC1 Music Card Six Pack Plus MC16 Music Generator Atlantis Computers Allen Communications Datalok BCD450 VMI Atron PC Probe Alloy Computer PC-DISC Aughton Automation PS-STOR 4-Channel (12-bit) AID

Analytic Engines Avcom Saybrook PM-300

283 Expanding and Networking Microcomputers

Barr Systems Computer Stations Barr/HASP Dithertizer lie

BCD Associates Computotech Systems Model 450 VTR Control Interface Diplomat Video Digitiser VIPc

B & 0 Electronics Comstock BS II Plus MCS-701

Bi-Comm System Concept PC-1 Power Controller Concept 100 Graphicard 100 Bit-3 Dual-Comm Plus Full-View 80 Control Systems Memory Plus Artist Multibus 401 Hostess Multibus Adaptor

Bizcomp Corvus Systems PC:lntelliModem Omninet VersaModem C/WP Computers California Computer Serial Communications Card Asynchronous Serial Interface Super Parallel Card Centronics Printer Interface GPIB (lEEE-488) Interface Parallel Interface CXI Synchronous Serial Interface PCOX Coaxial Interface Board Cambridge Electric Dark Star Systems CED 1401 Snapshot Copykit

Capital Equipment Datacopy CEC 01000 Datacopy Model 90

Central Point Dataflex Wildcard 2 Multi Superam Cermetek Trio InfoMate 212PC Data Translation CGD International DT2801/DT2805 VMC 2020 DT2818 DT2832/DT2834 Chatsworth Data IRMA OMR-1000 PMR-2000 Davong Systems Multilink Network Interface Card Chrislin Industries Multi-OS CIC-PCM Network and Multifunction Card CIC/PCM+ CI-PCHD Daystar Systems CI-PCM Ultra 55 CI-PCM+ Ultra RAM Cogent Data The Database Machine Decillonix DX-1 Columbus Instruments A/D 12-16 Destek LCI-8 Desnet NIU PC-800 Thermex Digisolve Thermocouple Interface VGP 64 284 Appendix 10

Digital Communications Futurex Irmalette ENC-200 ENC-300 Digitek (International) RAM-Master FutureNet Screenmaster 80 Dash-1 Super Print Master III Gateway Communications Dilog PC Products PC-LNIM Electronic Disc Supercharger

Discwasher Genie Computer Calling Four Genie 5+5 Genie 5 x 10 x 15 x 20 Genie x 5 Douglas Electronics Jetstreamer 20/40 Appleseed 32-DE-12/25-de-12 Appleseed 64K RAM Board Glanmire Electronics Appleseed CPU Board GE 64K 80 Column Card Appleseed EPROM Board Micro-Watch Appleseed Mother Board Appleseed Quad UART GM Enterprise Appleseed Ribbon Cable System Parle PC Appleseed Text Board Appleseed Universal Board Gram Business Appleseed Writable ROM IPB IPB-16K Dynatech Mem/DOS Great Lakes Computer TD-19 Time Link Multifunction Interface Board Stowaway 10 Group Technology Easitech BG-Board Easiboard Hayes Enhancement MicroModem lie PDQ Super-32 Smartmodem 1200B

Eventide Hercules APX-252 Hercules Graphics Card

Excalibur Heydon & Son Savvy Adalab AI13 Interface Card Softweigh Falcon PC eXTender Hicomp MBM-500 Faxscan AD-2 Ibex TS-100 Flexitallic Controls Autoprom IBM Datalock 5 ! inch Diskette Drive Adaptor Eight Channel D/A Board 64/256 Kb Memory Expansion FCL 2000 Color/Graphics Monitor Adaptor Fixed Diskette Drive Adaptor Monochrome and Printer Adaptor Forte Data Printer Adaptor PC 3278/79 Emulator/Adaptor Board PC78-2/3/4 IDE Associates IDEAboard Franklin Computer IDEAComm 1200 Ace IDEAComm 3278 IDEAdisk Frontier Technology IDEAgraph IHR IDEAmini

285 Expanding and Networking Microcomputers

IDEAnet IDEAplus MA Systems I/O Processor Image Technology Omnigraph Function PAK 512 PC Peacock

Imaging Technology Marinco PC Vision APB-3024 PC

Indigo Data Maynard 16K RAM Board SandStar Memory PCMultipak/PC/Multipak/P SandStar Multifunction Card

Infocrypt Metamorphic Systems Infocrypt MetaCard

Information Technology Metatek Linkup 501 Metascope

Innovative Measurements MetraByte Realclock Dascon-1 PI012 Intelligent Technology ClusterNet 3270 Microcom CP Express Era 2

Interactive Structures Microcomputer AI02 Analog Input System MSI-VSOI Analog Input System A003 Analog Output System Microconsultants D109 Digital I/O Interface Analog Output (DAC) Board Epson MX-80 Printer Interface Digital Inout Board PKASO/U Universal Parallel Printer Interface Digital Output Board High Speed ADC Interlan RS422 Multiplexer/Convertor NET/Plus Micro Control las Space Tablet Series 401 FFT Microcosm JDR Microdevices Microcosm M(x) 7050-42 7060-45 Microdimensions P500 MD-1000 John Bell 512 K Memory Micro General 6522 Parallel Interface PC Weighmate A/D Convertor EPROM Programmer Micrographics Speech Synthesiser MasterGraphics 1 Adaptor Universal I/O Micro Integrations Kensington Microware PXA Smorgasboard Microlog Keyzone Baby Blue A/D Connector Baby Talk Little Red RAM Legend Industries 18SRC RAMcard Micromint 64 KC RAM Card E-Z Color Graphics Interface 128KDE Soft Disk Micro D-Cam S'card Sweet Talker Super Emulator

286 Appendix 10

Microsoft Novation RAMcard Apple-Cat II SoftCard PC 1200B Systemcard Novell Midwest Data Source SX-605 Burple Number Nine Booster Card Mimic Mimic Bufferboard MNC International Grappler+ Advanced Peripheral Board Smart Card Combination Peripheral Board Orbital Systems High-Density Memory Board 80-Column Card e-z Card Mountain Copycard AID + D/A Disco-RAM CPS Multicard Dynamic Disk Orchid MusicSystem Turbo 186 Ramplus + Romplus + Owl Micro-Communications Romwriter Owl MultiCom Supertalker SD 200 Owltel The Clock Pacific Micro PMS Type 201 Mouse Systems PC Mouse Pact Electronics 80-Column Video Terminal Interface MPC Peripherals 0/A Convertor Bubdisk Para-graph IBM-BUB RGB Colour Video Interface IBM-PPA RS232C Serial/Communications Interface IBM-SIO Paradise Systems M & R Enterprises Paradise Multi Display Card Sup'R Terminal Pathway Designs Multitech Pathway/2780/3780 Modem II PathwayBSC-3270/BSC-3770 MultiModem lie Pathway/Communications Adaptor Multi-Modem PC Pathway /S NA-3270/S NA-3770

Mylex PC+ Product Chairman Colorplus

National Instruments PC Technologies GPIB-PC Cuecard Cueram National Memory Director PC-8000 Encore/Encore+

Netronics PCT Electric Mouth PCT 256 K

Nine Tiles PC Ware Multilink Interface Board 256 K RAM Board Centronics Printer Interface Northwest Instrument Clock Calendar MicroAnalyst 2000 Enhanced Printer Adaptor Model 65 aGen Extended 80-Column Card Model 85 aScope HI-RES Graphic Printer Interface

287 Expanding and Networking Microcomputers

Parallel I/O Interface Quentin Research Parallel Printer Adaptor AP-100 Serial Communications Adaptor Q-500-AP Serial Interface Q-500-IS

Percom Data Qwerty PN-IBM Q-68

Personal Computer Products Rana Systems 88 Card Elite Appli-Card Random Access Persyst MM-1/PC Async Card COAX/3278 DCP/88 Raytronics PC/Color Fleximem PC/Monochrome Flexipro Timeport RAMPLUS Time Spectrum Reactive Systems Piiceon Group Response System WHAMS 1-XT Retail Solutions Practical Peripherals The Retailer GraphiCard Microbuffer II Robocom Microbuffer lie Robo 500 Microbuffer II/S Robo 1000 PRinterface Proclock Rovino SeriALL ICE II

Profit Santa Clara Systems ADDRAM ELITE Mini-Mega ADDRAM PLUS Quick Oisc Multigraph SCS PC Net

Prometheus Products Scion APPLEssurance PC 640 Expand-a-RAM Graphitti Scott Instruments PIS Buffer Card Shadow/VET VERSAcard VBLS/VET

Pure Data Semidisk POA232C Semidisk 4951 PDI208SP PDI464SP Sigma PDI464SS Graphics Dazzler PDIB-128/384 Hard Disk Controller Half Height Hard Disk Controller Quadram Maximizer APIC/G Parallel Interface Board SOl-Floppy eRAM 80 SOI-SSC Multicore Quad 512+ Simon Computers Quadboard Aristocard 68000 Quadcolor Parallel Aristocard Quaddisk Serial Aristocard Quad I/O SimonCard Quadlink Quadvue Redicore Small Systems Transcore IBM 80 Card

288 Appendix 10

Softworks Bosun R.O.S. Captain DADIO Southern California Distance Tender Quickloader Dynamic Memory Ethernet Companion SSM Microcomputers Ethernet Link A488 IEEE-488 Controller Forget-Me-Not CMOS Memory Graphics Master Standard Microsystems Modem 300 ARCNET-PC Modem 1200 IEEE-488 Interface Lab Master Stellation Two Lab Tender McMili Scribe Master The Mill 6809 Scribe Tender The Mill Pascal Speech Master Vitamill Static RAM/ROM Stepper Motor Controller STB Systems TM-AD211 Graphix Plus TM-AD213 Memory Expansion Board TM-DA101 Printer PIus Video Cassette Recorder Controller Rio Plus Video Van Gogh STB-80 Video Board Voice Recognition Super Rio Wave Super I/O Teletypesetting Strawberry Tree MicroSetter Analog Connection II Dual Thermometer Thunderware Thunderclock Plus Strategic Systems Apple-DDT Titan Accelerator lie Street Electronics Accelerator PC Echo-II Cygnus Echo-PC Neptune Saturn RAM SWI International Titan PRO-NET Satellite Total Logic Synetix Micro Products Inc. LA-100 Flashcard LA-200 SuperSprite Transend Tall Tree Systems Modem Card JRAM-2 V-Microcomputers Tecfen Business Card ComputerScope Science Card U-4DISC Techland Systems U-A/D Blue Lynx 3270 U-BCD Blue Lynx S/34 S/36 S/38 U-Cent Blue Lynx VTERM U-CCT U-DT Techport U-M68000 Paragraph-I U-Nscrump U-Port U-Print 16 Tecmar U-Prot2 1st Mate U-RAM 16/32/64/128 2nd Mate U-S232 3rd Mate U-Talk

289 Expanding and Networking Microcomputers

U-Term Voice Machine U-Z80 CASH Voice Input Module Ungermann-Bass Network Interface Unit Vynet Vynet V100 U-Sci GCDS Wesper Microsystems GrafMaster II US Robotics PC MemoryCard IBM PC Modem Wizard 16K USR PC Modem Wizard 80 Wizard BPO Vector Electronic Wizard Megadisc 4609 Wizard PC Memory 4613 Wizard SBO Wizard SOB Wizard Spooler Vectrix Midas WestStar MicroStar Ventel PC Modem 1200 PC Modem Half Card Word Power Computer Security Lock Dual DOS Vergecourt Magic Typer Ramex 16 PROM Programmer Ramex 128 Videx XCOMP Enhancer II X-Net PSIO UltraTerm Ziatech UniPrint ZT 1488 VideoTerm Zobex Vista Computer 4HDC-62W A800 ZM 256 A1200 Zobex 2SP Vision-80 Zoom Telephonics VLSI Networks Networker 1553-Net Communications Controller

290 Appendix 11 MANUFACTURER: DISTRIBUTOR/DEALER: Advanced Microcomputer Systems Inc. MANUFACTURERS' ADDRESSES 6802 N.W. 20th Avenue Fort Lauderdale FL 33309 USA MANUFACTURER: DISTRIBUTOR/DEALER: Tel: (305) 975-9515 ABM Computer CPS (Data Systems) Systems Ltd. Adwar Video Corporation 3 Whatney Arden House 335 W. 35th St. Irvine CA 92714 1102 Warwick Road New York NY 10001 USA Acocks Green USA Birmingham B27 6BH Tel: (212) 947-4040 Tel: (714) 859-6531 Tel: 021-707 3866 Telex: 292472 ABM UR Telex: 312280 CPS G Allen Communications 140 Lakeside Plaza II ALF Products Inc. 5225 Wiley Post Way 1315F Nelson Street Salt Lake City UT 84116 Denver CO 80215 USA USA Tel: (801) 537-7800 Tel: (303) 234-0871 Telex: 4991824 Alloy Computer Alloy Computer Products Products Europe Ltd. AST Research Inc. 100 Pennsylvania Cotteswold House 2372 Morse Avenue Avenue Gloucester Street Irvine CA 92714 Framingham MA 01701 Cirencester GL7 2DQ USA USA Tel: (617) 875-6100 Tel: (0285) 68709 Tel: (714) 540-1333 Telex: 710-346-0394

AVCOM Inc. Amdek Corporation Westrex P.O. Box 29153 2201 Lively Blvd 6 Greenhill Columbus OH 43229 Elk Grove Village Wembley Park USA IL 60007 Middlesex USA Tel: (614) 882-8176 Tel: (312) 364-1180 Tel: 01-904 6070 Abacus Enterprises Inc. Telex: 254786 P.O. Box 1836 Detroit MI 48231 Analytic Engines Inc. USA 3415 Greystone Suite 305 Tel: (313) 524-2444 Austin TX 78731 USA

Acrosystems Tel: (512) 346-8430 66 Cherry Hill Drive PO Box 487 Antex Data Systems Beverley MA 01915 2630 California Street USA Mountain View CA 94040 USA Tel: (617) 927-8885 Tel: (415) 941-7914 Adaptec Inc. Thame Systems 580 Cottonwood Drive Thame Apparat Inc. Milpitas CA 95035 Oxon 4401 South Tamarac Parkway USA Denver CO 80237 USA

Tel: (408) 946-8600 Tel: (084421) 5471 Tel: (303) 741-1778 Advanced Logic Systems Applied Analytics Inc. Suite 1209 8235 Penn-Randall Place Marine Way, Mountain View Upper Marlboro MD 20772 CA 94043 USA USA

Tel: (800) 235-6442 Tel: (301) 627-6650 291 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER Applied Business Computer BCD Associates Inc. 330 E Orangethorpe Ave 5809 S. W. 5th Street Suite C Suite 101 Placentia CA 92670 USA Oklahoma City Tel: (714) 993-1101 OK 73128 USA Applied Engineering PO Box 798 Tel: (405) 948-1293 Carrolton TX 75006 Telex: 4991435 USA Barr Systems Inc. Tel: (214) 492-2027 2500 Blue Ridge Road Suite 315 Applied Logic Inc. Raleigh NC 27607 PO Box 328 USA Jamaica NY 11415 USA Tel: (919) 782-4462

Tel: (212) 459-4064 Bi-Comm Systems Inc 2963 Yorkton Blvd Apstek Inc. Axis Personal Computer Saint Paul MN 55117 2636 Walnut Hill Lane Products USA Suite 335 Eden House Dallas TX 75229 32 Well Road Tel: (612) 481-0775 USA Maidstone Kent ME14 1X,L Bit-3 Computer Corpor­ ation Tel:(214) 357-5288 Tel:(0622) 58688 8120 Penn Avenue S. Telex: 965633G (Attn. Suite 548 Axis) Minneapolis MN 55431 USA Ariel Corporation 600 West 116th Street Tel: (612) 881-6955 Suite 84 New York NY 10027 Bizcomp USA 532 Weddell Drive Sunnyvale CA 94086 Tel: (212) 662-7324 USA

Atlantic Computers Tel: (408) 745-1616 31-14 Broadway Astoria NY 11106 USA 3 Com Tel: (212) 728-6700 1390 Shorebird Way P.O. Box 7390 Atron Mountain View CA 94039 20665 Fourth Street USA Saratoga CA 95070 USA Tel: (415) 961-9602 Telex: 345546 Tel:(408) 741-5900 C/WP Computers Aughton Automation Flexitallic Controls Ltd. Willow House Woodward Road Road Willow Place Kirkby Ind. Estate Rochdale London SW1P 1JH Liverpool L33 7UF Lancs OL12 6BZ Tel: 01-630 7444 Telex: 915267 Tel: (051) 548-7788 Tel: (0706) 343438 Telex: Q~174 CGD International N.V. CGD Ltd. Kaya Prof. Enrique Clifford House B & D Electronics Ecker 5 185 Lower Richmond PO BOX 3651 PO Box 3945 Road Lawrence KS 66044 USA Curacao Richmond Netherlands Antilles Surrey TW9 4LT Tel: (913) 841-4182 Tel: 01-878 7661

292 Appendix 11

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER: CXI Inc. Cogent Data Tech. Inc. 3606 W. Bayshore Rd, P.O. Box 3902 Palo Alto CA 94303 Belleview WA 98009 USA USA

Tel: (415) 424-0700 Tel: (206) 455-3343

California Computer P& P Microdistributors Columbus Instruments International Corporation Systems Ltd. 950 N. Hague Ave Carrs Industrial Estate Columbus OH 43204 Rossendale USA Lancs Tel: (0706) 217744 Tel: (614) 488-6176 Telex: 635740 Telex: 246514 PETPAM G Cambridge Electronic Design Ltd. Computer Stations Inc. Science Park 11610 Page Service Drive Milton Road St. Louis MO 63146 Cambridge CB4 4BH USA

Tel: (0223) 316186 Tel: (314) 432-7019 Telex: 817923 CompuTOtech Systems Capital Equipment Yorkshire 168 Finchley Road Corporation Microcomputer Ltd. London 10 Evergreen Avenue Standard House NW36HP Burlington MA 01803 James Street USA York Tel: (01) 749 0202 Telex: 268048 EXTLDN G Tel: (617) 273-1818 Tel:(0904) 642941 Comstock Inc. Central Point Software Inc. PO Box 199 PO Box 19730 Oak Ridge TN 37830 Portland OR 97219 USA USA Tel: (615) 483-7690 Tel: (503) 244-5782

Cermetek Microelectronics Concept Technologies Alrad Instruments Ltd 1308 Borregas Avenue Inc. Turnpike Road Indus­ PO Box 3565 PO Box 5277 trial Estate Sunnyvale CA 94089 Portland OR 97208 Newbury USA USA Berkshire RG13 2NS

Tel: (408) 734-8150 Tel: (503) 684-3314 Telex: 910-379-6931

Chancellor Computer Corp. 1101 San Antonio Road Control Systems Mountain View CA94043 2855 Anthony Lane USA Minneapolis MN 55418 USA Tel:(415) 969-5000 Tel: (612) 789-2421 Chatsworth Data Corporation 20710 Lassen Street Chatsworth CA 91311 Corvus Systems USA 2029 O'Toole Avenue Tel: (818) 341-9200 San Jose CA 95131 USA Chrislin Industries Caribe Inc. PO Box FF Tel: (408) 946-7700 Canovanas PR00629 Telex: 278976 USA

293 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER:

3D Digital Design and Destek Development 830 E. Evelyn Avenue 18/19 Warren Street Sunnyvale CA 94086 London, W1P 5D3 USA

Tel: (01) 387 7388 Tel: (408) 737-7211 Telex: 8953742 MERTON G Digisolve Ltd. Dark Star Systems Dark Star Systems Aire & Calder Works R39a South Street 78 Robin Hood Way Cinder Lane, Castleford Williamsburg MA 01096 Greenford W. Yorkshire WF10 1LU USA Middlesex UB6 7QW Tel: (0977) 513141 Tel: (413) 268-7351 Tel: (01) 900-0104 Telex: 557661 AGRAM G

Data Translation Inc. Data Translation Ltd. Digital Communications Inc 100 Loche Drive 430 Bath Road 303 Technology Park Marlboro MA 01752 Slough Norcross GA 30092 USA Berks SL1 6BB USA

Tel: (617) 481-3700 Tel: (06286) 3412 Tel: (404) 448-1400 Telex: 951646 Telex: 849862 Dilog PC Products Distributed Logic Corp Datacopy Corp. 12800 Garden Grove Blvd 1215 Terra Bella Ave CA 92643 Mountain View CA 94043 USA USA Tel: (714) 534 8950 Tel: (415) 965-7900 Discwasher Telex: 701994 Datacopy UD 1407 North Providence Rd. PO Box 6020 Columbia MO 65205 Dataflex Ltd. USA The Systems Centre 238-246 King Street Tel: (212) 355-5049 Hammersmith London W6 ORF Douglas Electronics Inc 718 Marina Blvd Tel: (01) 748 4176 San Leandro CA 94577 USA Davong Systems Inc. 217 Humboldt Court Tel: (415) 483-8770 Sunnyvale CA 94086 USA Dynamic Solutions Corporation 61 South Lake Avenue Tel: (408) 734 4900 Suite 305 Telex: 176386 Pasadena CA 91101 USA Daystar Systems Inc. 10511 Church Road Easitech Corporation Ferrari Software Ltd. Suite A 2215 Perimeter Park 683 Armdale Road Dallas TX 75238 Suite 22 Feltham USA Atlanta GA 30341 Middlesex TW4 OLW USA Tel: (214) 341-8136 Tel: (404) 452-7576 Tel: (01 )-751 5791 Decillonix Telex: 8953736 P.O. Box 70985 Sunnyvale CA 94086 USA

Tel: (408) 732-7758 294 Appendix 11

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRI SUTOR/DEALER:

Enhancement Technology Corp. Forte Data Systems Inc. PO Box 1267 1500 Norman Avenue 100 North Street Santa Clara CA 95050 Pittsfield MA 01202 USA USA Tel: (408) 980-1750 Tel: (413) 445-4219 (800) 233-3278

En-Link Inc. Franklin Computer Corporation 4706 Bond 2128 Route 38 Shawnee KS 66203 Cherry Hill NJ 08002 USA USA

Tel: (913) 268-6066 Tel: (609) 482-5900 Telex: 837385 Eventide Inc. Feldon Audio Ltd. 1 Alsan Way 126 Great Portland FutureNet Little Ferry NJ 07643 Street 21018 Osborne St USA London W1N 5PH Canoga Park CA 91304 USA Tel: (201) 641-1200 Marquee Electronics 10 Richmond Mews Bean Street Futurex Security Systems London W1 9700 Fair Oaks Blvd Fair Oaks CA 95628 Everex Systems Inc. USA 819 Maude Ave Moutain View CA 94043 Tel: (916) 966-6836 USA GM Enterprise Inc. Tel: (415) 967-1495 485 E. Granville Ave. Roselle IL 60172 Excalibur Technologies Corporation USA 800 Rio Grande Blvd NW 21 Mercado Tel: (312) 893-1171 Albuqerque NM 87104 USA Gateway Communications Inc. 16782 Redhill Ave Tel: (505) 242-3333 Irvine CA 92714 USA Falcon Technology Inc. 6644 S. 196th Street Tel: (714) 261-0762 Suite T-101 Kent WA 98032 Genie Computer Corporation USA 31117 Via Colinus Suite 202 Tel: (206) 251-8282 Westlake Village CA 91362 USA Faxscan Inc. 3148 Dorf Drive Dayton OH 45418 USA Glanmire Electronics P & P Microdistributors Ltd. Ltd Tel: (513) 263-8475 Meenane Carrs Industria I Estate Watergrasshill Rossendale Flexitallic Controls Ltd. County Cork Lanes. Dell Road Ireland Rochdale Lancs OL12 6BZ Tel: (021) 889209/ Tel: (0706) 217744 889295 Telex: 635740 Tel: (0706) 343438 Telex: 75385 PETPAM G Telex: 63174

295 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER:

Gram Business P & P Microdistributors IBM Sales Ltd. Systems Ltd. Ltd P.O. Box 32 48 Hedley Street Carrs Industrial Estate Alencon Link Maidstone Rossendale Basingstoke Kent ME20 5AD Lanes. Hampshire RG21 1EJ

Tel: (0622) 387028 Tel: (0706) 217744 IDE Associates Inc. KPG Telex: 635740 7 Oak Park Drive Hardware House PETPAM G Bedford MA 01730 568 Chiswick High Road USA London W1 5RP Great Lakes Computer Peripherals Inc. 2200 W. Higgins Road Tel: (617) 275-4430 Tel: (01) 995 3573 Hoffman Estates IL 60195 Telex: 418325 KPGHO USA G las Inc. Tel: (800) 323-6836 12812-J Garden Grove Blvd (312) 884-7272 Garden Grove CA 92643 USA . Group Technology Ltd. P.O. Box 87 Tel: (714) 539-7842 Check VA 24072 Telex: 296938 las (UR) USA Image Technology Inc. Microsystem Services Tel: (703)-651-3153 5994 S St. Paul Way PO Box 37 Littleton CO 80121 Lincoln Road Hayes Microcomputer Products Inc. USA High Wycombe 5923 Peachtree Industrial Blvd. Bucks HP12 3XJ Norcross GA 30092 USA Tel: (303) 794-2074 Tel: (0494) 41661

Tel: (404) 441-1617 Imaging Technology Data Translation Ltd. Inc. 430 Bath Road Hercules Computer Reflex 600 West Cummings Slough Technology Wellington Ind. Estate Park Berks. SL1 6BB 2550 Ninth Street Basingstoke Road Woburn MA 01801 Suite 210 Spencers Wood USA Berkeley CA 94710 Reading RG7 1AW USA Tel: (617) 938-8444 Tel: (06286) 3414 Telex: 948263 IMAGING Telex: 849862 Tel: (415) 540-6000 WOBM

Heyden and Sons Ltd. Indigo Data Systems Inc. Spectrum House 100E NASA Road Hillview Gardens Suite 106 London, NW4 2JQ Webster TX 77598 USA Tel: (01)-203 5171 Telex: 28303 HEYLDN G Tel: (713) 488-8186

Hicomp Computer Corp. Infocrypt AXIS Personal 5016 148th Avenue NE 34 Wearde Road Computer Products Redmond WA 98052 Saltash Eden House USA Cornwall 32 Well Road Maidstone, Tel: (206) 881-6030 Kent ME14 1XL Tel: (07555) 3648 Tel: (0622) 58688 IBEX Computer Corporation Telex: 965633 G (attn. 20741 Marilla St. AXIS) Chatsworth CA 91311 USA Information Technologies Inc. 7850 East Evans Road Scottsdale AZ 85260 USA

Tel: (602) 998-1033 296 Appendix 11

MANUFACTURER: DISTRI SUTOR/DEALER: MANUFACTURER: DISTRI BUTOR/DEALER:

Innovative Measurements Inc. Legend Industries Ltd. PO Box 3879 2220 Scott Lake Road San Clements CA 92672 Pontiac MI 48054 USA USA

Tel: (714) 493-2174

Intelligent Technologies Corp. M & R Enterprises 151 University Avenue 910 George Street Palo Alto CA 94301 Santa Clara CA 95050 USA USA

Tel: (415) 328-2411 Tel: (408) 980-0160

Interactive Structures P & P Microdistributors Inc. Ltd MA Systems Inc. 146 MontgomeryAvenue Carrs Industrial Estate 2015 O'Toole Ave Bala Cynwyd PA 19004 Rossendale San Jose CA 95131 USA Lanes. USA

Tel (215) 667-1713 Tel: (0706) 217744 Tel: (408) 943-0596 Telex: 635740 PETPAMiG MNC International Interlan Corporation Data Translation Ltd. 511 11th Avenue South 3 Lyberty Way 430 Bath Road Suite 429 Westford MA 01886 Slough Minneapolis MN 55415 USA Berks. SL1 6BB USA

Tel: (617) 692-3900 Tel: (4462) 863412 Tel: (612) 333-4303 Telex: 951909 Telex: 851849862 Telex: 910-576-2754

Interphase Corporation MPC Peripherals Corp. 2925 Merrell Road 9466 Black Mountain Rd Dallas TX 75229 San Diego CA 92126 USA USA

Tel: (214) 350-9000 Tel: (619) 578-9222 Telex: 732561 .(TELESERV) DAL (800) 321-1028 Telex: 910-335-1177 JDR Microdevices 1224 South Bascon Avenue San Jose CA 95128 Marinco Inc. USA 3878-A Ruffin Road San Diego CA 92123 Tel: (408) 995-5430 USA Telex: 171110

John Bell Engineering Inc Maynard Electronics 1014 Center Street 400 Semoran Blvd San Carlos CA 94070 USA The Greater Mall, Suite 207 Casselberry FL 32707 USA Kensington Microware Kensington Datacom 251 Park Avenue South Ltd. Tel: (305) 331-6402 New York NY 10010 52 Ebury Street USA London SW1 OLU Memsoft S.A. Dynatech Microsoftware Ltd 3 rue Meyerbeer rue du Commerce Tel: (212) 486-7707 Softsel Computer 0600 Nice Bouet Telex: 236200 KENUR Products France St Peter Port Softsel House, Central Guernsey C.1. Way North Feltham Trading Estate Feltham Middlesex TW14 OXQ

297 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER:

Metamorphic Systems Inc. Microcomputer Systems Inc. 8950 Villa La Jolla Drive 1814 Ryder Drive Suite 1200 Baton Rouge LA 70808 La Jolla CA 92037 USA USA Tel: (504) 769-2154 Tel: (619) 457-3870 Telex: 182754 HQLJLA Microconsultants Computers Ltd. Metatek Inc. 5 West Mills 12525 Hummingbird St. Newbury P.O. Box 33129 Berkshire RG14 5HG Minneapolis MN 55433 Tel: (0635) 44967 USA Telex: 946643 Tel: (612) 571-7319 Microcosm Inc. MetraByte Corporation Dome Electronic 14355 S. W. Allen 254 Tosca Drive Components Ltd. Beaverton OR 97005 Stoughton MA 02072 Unit 2a Stephenson USA USA Close East Portway Industrial Estate Microdimensions Inc. Andover PO Box 682 Hampshire SP10 3RU Willoughby OH 44094 USA Tel: (617) 344-1990 Tel: (0264) 54534 Telex: 477891 DOME G Tel: (216) 953-8414

Micro Control Systems Inc. Microlog Inc. 630 Oakwood Ave. 222 Route 59 Suite 206 Saffern NY 10901 West Hartford CT 06110 USA USA Tel: (914) 368-0353

Micro General Corporation The Micromint Inc. 1929 S.E. Main Street 561 Willow Avenue Irvine CA 92714 Cedarhurst NY 11516 USA USA

Tel: (714) 865-1684 Tel: (800) 645-3479 Microsoft Corporation Microsoft Ltd. Micro Integration Engineering Inc. 10700 Northup Way Piper House 11 Clearbrook Road Bellevue WA 98004 Hatch Lane Elmsford NY 10523 USA Windsor USA Berks SL4 3QJ

Tel: (914) 592-8989 Tel: (07535) 59951 Telex: 847924 MICROEG MicroGraphics Technology Corp. 1820 McCarthy Blvd Microsignal Milpitas CA 95035 PO Box 22 USA Millwood NY 10546 USA Tel: (408) 996-8423 Midwest Data Source Palmer & Webb Ltd Microcom Inc. Regent House 1400 Providence Highway 1010 Nimitz Road 188 High Street Norwood MA 02062 Cincinnati OH 45230 Sutton USA USA Surrey

Tel: (617) 762-9310 Tel: (513) 231-2023

298 Appendix 11

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER: Mimic Inc. Netronics Research & Development Ltd. P.O. Box 921 333 Litchfield Road Action MA 00000 New Milford CT 06776 USA USA Tel: Tel: (203) 354-9375 Mountain Computer P & P Microdistributors Inc. Ltd Nine Tiles Computer Systems Ltd. 300 EI Pueblo Road Carrs Industrial Estate 25 Greenside Scotts Valley CA 95066 Rossendale Waterbeach USA Lancs. Cambridge CB5 9HW

Tel: (408) 438-6650 Tel: (0706) 217744 Tel: (0223)862125/861030 Telex: 910-598-4504 Telex: 635740 PETPAM G Northwest Instrument Microsystem Mouse System Corporation Systems Inc. P.O. Box 37 23364 Walsh Avenue P.O. Box 1309 Lincoln Road Santa Clara CA 95051 Beaverton OR 97075 Cressex Industrial Est. USA USA High Wycombe Bucks HP12 3XJ Tel: (408) 988-0211 Telex: 467848 Tel: (503) 645-5151 Tel: (0494) 41661 Telex: 469558 Multitech Electronics Inc. 195 West EI Camino Real Novation Sunnyvale CA 94086 20409 Prairie Street USA Box 2875 Chatsworth CA 91311 Tel: (408) 773-8400 USA

Multitech Systems Inc. Tel: (213) 996-5060 82 Second Avenue SE New Brighton MN 55112 Novell Inc. USA 1170 N. Ind. Park Drive Orem UT 84057 Tel: (612) 631-3550 USA Telex: 910-563-3610 Tel: (801) 226-8202 Mupid Computer Gesellschaft MbH (800) 453-1267 Landsbergerstrasse 478 Telex: 669401 AIR COURS PHX 8000 Munchen 60 W. Germany Number Nine Computer Eng. Inc. PO Box 1802 Mylex Corporation Hartford CT 06144 5217 N.W. 79th Ave USA Miami FL 33166 USA Orange Micro Inc. P &IP Microdistributors Tel: (305) 592-9669 1400 N Lakeview Ltd Avenue Carrs Ind Estate National Instruments Amplicon Electronics Anaheim CA 92807 Rossendale 12109 Technology Blvd Ltd. USA Lancashire Austin TX 78727 Richmond Road USA Brighton Tel: (714) 779-2772 Tel: (0706) 217744 East Sussex BN2 3NL Telex: 183511 CSMA Telex: 635740 PETPAM' G Tel: (800) 531-5066 Tel: (0273) 608331 (512) 250-9119 Orbital Systems Inc. 5225 East Hearn Road National Memory Systems Corporation Scottsdale AZ 85254 355 Earhart Way USA Livermore CA 94550 USA Tel: (602) 830-6457

299 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRI SUTOR/DEALER:

Owl Micro-Communications Ltd. Passport Designs Inc. The Maltings 625 Miramontes st Station Road Half Moon Bay CA 94019 Sawbridgeworth USA Herts Tel: (415) 726-0280 Tel: (0279) 723848 Pathway Designs Inc. P.C.T. Inc. 177 Worcester Street 3714A Silver Star Road Wellesly MA 02181 Orlando FL 32808 USA USA Tel: (617) 237-7722 Tel: (800) 874-7062 Percom Data Corporation PC Technologies Corp 11220 Pagemill Road 2215 Perimeter Park Dallas TX 75243 Suite 22 USA Atlanta GA 30341 USA Tel: (214) 340-7081

Tel: (404) 452-7576 Personal Computer Products Inc. 11590 West Bernado Court PC Ware Inc San Diego CA 92127 4883 Tonic Drive USA San Jose CA 95136 USA Tel: (619) 485-8411 Telex: 4992939 Tel: (408) 978-8626 Persyst Products Micro Technology PC+ Products Personal Systems Tech­ 51 The Pantiles 7630 Hayward Road nology Inc. Tunbridge Wells PO Box 502 15801 Rockfield Blvd Kent TN2 5TE Frederick MD 21701 Suite A USA Irvine CA 92714 USA Tel: (301) 662-5901 Telex: 893438 Tel: (714) 859-8871 Tel: (0892) 45433 Telex: 467864 Telex: 95441 MICRO G Pacific Micro Systems Inc. 160 Gate 5 Road Piiceon Inc. Sausalito CA 94965 1991 Concourse Drive USA San Jose CA 95131 USA Tel: (415) 331-2525 Tel: (408) 946-8030 Pact Electronics (UK Sales) Ltd. Telex: 171135 MISSION SNTA Sergeants Way Elms Industrial Estate Practical Peripherals Bedford MK41 OEH 31245 La Baya Drive Westlake Village CA 91362 Tel: (0234) 218255 USA Telex: 82392 Tel: (818) 991-8200 Paradise Systems Inc Accent Computers Ltd. Telex: 910-336-5431 150 Northill Drive PO Box 62 Brisbane CA 94005 London SW10 9LT Profit Systems Inc. P& P Microdistributors USA 30200 Telegraph Road Ltd Suite 132 Carrs Industrial Estate Tel: (415) 468-6000 Birmingham MI 48010 Rossendale USA Lancashire

Tel: (313) 647-5010 Tel: (0706) 217744

300 Appendix 11

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER:

Prometheus Products Inc. Raytronics 45277 Fremont Blvd 4901 Morena Blvd Fremont CA 94538 Building 900 USA San Diego CA 92117 USA Tel: (415) 490-2370 Tel: (800) 854-1085 Pure Data Ltd. Anderson Jacobson (619) 270-4000 950 Denison Street 752 Deal Avenue Markham, Ontario Slough Reactive Systems Inc. Canada L3R 3K5 Berkshire SL1 4SJ 40 North Van Brant Street Englewood NJ 07631 Tel: (416) 498-1616 USA

Quadram Corporation Axis Personal Computer Tel: (201) 568-0446 4355 International Blvd Products Telex: 759688 Norcross GA 30093 Eden House USA 32 Well Road Retail Solutions Inc. Maidstone 1211 Alderwood Avenue Kent ME14 1XL Sunnyvale CA 94086 USA Tel: (404) 923-6666 Tel: (0622) 58688 Telex: 810-766-4915 Telex: 965633G (Attn. Tel: (408) 734-0653 (QUADRAM NCRS) Axis) Robocom Ltd. Quentin Research Inc. CIL Building 9207 Eton Avenue Goodwin Street Chatsworth CA 91311 London N4 3HQ USA Tel: (01) 263 8585 Tel: (213) 709-6500 Telex: 9104942682 Rovino Ltd. Axis Personal Computer 35 James Street West Products Bath BA1 2BT Eden House Qwerty Inc. 32 Well Road 9252 Chesapeake Drive Maidstone Suite 600 Kent ME14 1XL San Diego CA 92123 USA Tel: (0225) 310916 Tel: (0622) 58688 Telex: 965633 G (Attn. Tel: (619) 5695283 Axis) RC Electronics Inc. AIMS Ltd 5386 Hollister Ave 400 Woodstock Road SSM Microcomputer P & P Microdistributors Santa Barbara CA 93111 Oxford OX2 8JW Products Inc. Ltd USA Carrs Ind Estate Rossendale Tel: (0865) 511484 Tel: (805) 964-6708 Lanes. Telex: 295281 RCSB Telex: 83147 (Attn. AIMS) Tel: (0706) 217744 Telex: 635740 Rana Systems PETPAM G 21300 Superior Street Chatsworth CA 91311 STB Systems Inc. USA 601 North Glenville Suite 125 Tel: (213) 709-5484 Richardson TX 75081 USA Random Access Inc. Tel: (214) 234-8250 246 Highland Road Pittsburgh PA 15235 USA Tel: (412) 247-7472

301 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER: SWI International Systems Softworks Inc P & P Microdistributors 7741 East Grey Road Ltd Suite 2 Carrs Industrial Estate Scottsdale AZ 85260 Rossendale USA Lancs

Tel: (602) 998-3986 Tel: (0706) 217744 Telex: 467580 Telex: 635740 PETPAM G Santa Clara Systems Inc. 1860 Hartog Drive Southern California Research Group San Jose CA 95131 PO Box 2231 USA Goleta CA 93118 USA Tel: (408) 287-4640 Telex: 176309 SCS SM Tel: (805) 685-1931

Scion Corporation Standard Microsystems Corp. 12310 Pinecrest Road 35 Marcus Blvd Reston VA 22091 Hauppauge NY 11788 USA USA

Tel: (703) 476-6100 Tel: (516) 273-3100 Telex: 710-833-0684 Stellation Two P & P Microdistributors The Lobero Building Ltd Scott Instruments PO Box 2342 Carrs Industrial Estate 1111 Willow Springs Drive Santa Barbara CA 93120 Rossendale Denton TX 76201 USA Lancs USA Tel: (805) 966-1140 Tel: (0706) 217744 Tel: (817) 387-9514 Telex: 635740 PETPAM G SemiDisk Systems P.O. Box GG Strategic Systems Technology Beaverton OR 97075 11 Connaught Place USA London W2 2ET

Tel: (503) 642-3100 Tel: (01) 625 4265 Telex: 299067

Sigma Designs Inc. Strawberry Tree Computers 2990 Scott Blvd 949 Cascade Drive Santa Clara CA 95050 Sunnyvale CA 94087 USA USA Tel: (408) 496-0536 Tel: (408) 736-3083

Simon Computers Ltd. Datalink Microcomputer Street Electronics Corp. 28 Lower Addiscombe Systems Ltd. 1140 Mark Avenue Road 10 Waring House Carpinteria CA 93013 Croydon Redcliffe Hill USA Surrey CRO 6AA Bristol BS1 6TB Tel: (805) 684-4593 Tel: 01-680 4646 Synetix Micro Products Inc. Small Systems Engineering Ltd. 15120 N.E. 95th 2-11 Canfield Place Redmond WA 98052 London USA NW63BT Tel: (206) 881-7110 Tel: (01) 328-7145 Telex 264538

302 Appendix 11

MANUFACTURER: DIS1'RIBUTOR/DEALER: MANUFACTURER: DISTRIBUTOR/DEALER:

Tallgrass Technologies Corp. Thunderware Inc. 11100 West 82nd St PO Box 13322 Overland Park KS 66214 Oakland CA 94661 USA USA

Tel: (913) 492-6002 Tel: (415) 652-1737 Telex: 215406 TBYT UR Titan Technologies Inc. P & P Microdistributors Tall Tree Systems 310 West Ann Street Ltd 1032 Elwell Court Ann Arbor MI 48104 Carrs Industrial Estate Suite 124 USA Rossendale Palo Alto CA 94303 Lancs USA Tel: (313) 662-8542 Tel: (0706) 217744 Tel: (415) 964-1980 Telex: 635740 PETPAM G Tecfen Corporation 5276 Hollister Avenue Total Logic Corporation Suite 451 PO Box 416 Santa Barbara CA 93111 Fort Collins CO 80522 USA USA

Tel: (805) 967-1153 Tel: (303) 226-5980

Techland Systems Inc. Techland Systems Transend Corporation 25 Waterside Plaza International Ltd. 2190 Paragon Drive New York NY 10010 Wyebridge House San Jose USA Cores End Road CA 95131 Bourne End USA Buckinghamshire Tel: (408) 946-7400 Tel: (212) 684-7788 Tel: (06285)26535/ Telex: 961134 26754 U-Microcomputers Ltd. Axis Personal Computer Telex: 849314 Winstanley Industrial Products Techport Inc. Estate Eden House 8120 Penn Ave South Long Lane, Warrington 32 Wel·1 Road Maldstone. Suite 114 Cheshire WA2 8PR Minneapolis MN 55431 Kent ME14 1XL USA Tel: (0925) 54117 Tel: (0622) 58688 Tel: (612) 888-5793 Telex: 629279 Telex: 965633 G (Attn. AXIS) Telex: 4310048 TECHPORT UMICRO G

Tecmar Inc. Middletron U-Sci Ltd. U-Microcomputers Inc. 6225 Cochran Road Middletron House Winstanley Industrial 300 Broad Street Cleveland OH 4413 Nottingham Road Estate Stamford USA Belper, Derby DE5 1JQ Long Lane Warrington CT 06901 Cheshire WA2 aPR USA Tel: (216) 464-7410 Tel: (077382) 6811 Telex: 241735 Telex: 377879 Tel: (0925) 54117 MIDLEC G Telex: 629279 UMICRO G Electroplan U.S. Robotics Inc. PO Box 19 1123 West Washington Orchard Road Roy~on,HertsSG85HH Chicago IL 60607 USA

Tel: (0763) 41171 Tel: (312) 733-0479 Telex: 81337 ECPLAN G TeleTypesetting Co. Ungerman-Bass Inc. 224 Nickels Arcade 2860 Mission College Blvd Ann Arbor Santa Clara CA 95050 MI 48104 USA USA

Tel: (313) 761-7664 Tel: (408) 496-0111

303 Expanding and Networking Microcomputers

MANUFACTURER: DISTRIBUTOR/DEALER: MANUFACTURER: DISTRI BUTOR/DEALER:

VLSI Networks Inc. Accent Computers Ltd. Vynet Corporation 2631 Manhattan Beach PO Box 62 2607 South Winchester Boulvd Blvd London SW10 9LT Campbell CA 95008 Redondo Beach CA USA 90278 USA Tel: (408) 370-0555

Vector Electronic Com­ I. & J. Products Wesper Microsystems Computronix pany Christchurch Road 14321 New Myford 14 The Ridings 12460 Gladstone Avenue 7A Kingbury House Road Frimley, Camberley P.O. Box 4336 Ringwood Tustin CA 92680 Surrey GU16 5RA Sylmar CA 91342 Hampshire BH24 1DG USA USA Tel: (730) 6250 Tel: (0276) 682422 Tel: (213) 365-9661 Telex: 4720628 WESPER Vectrix Corporation 2606 Dranchwood Drive WestStar Corporation Greensboro NC 27408 2665 Shell Beach Road USA Shell Beach CA 93449 USA Tel: (919) 288-0520 (800) 334-8181 Tel: (805) 773-3000

Telex: 574417 Word Power Ven-Tel Inc. PO Box 736 2342 Walsh Avenue EI Toro CA 92630 Santa Clara CA 95051 USA USA XCOMP Inc Tel: (408) 727-5721 3554 Ruffin Road South San Diego CA 92123 Vergecourt Ltd. USA Lyndean House Queens Road Tel: (619) 573-0077 Brighton Telex: 182786 East Sussex BN1 3XB ZenTek Corporation Tel: (0273) 728551 455 Whitepine Drive Telex: 877083 VERGCT Salt Lake City UT 84107 USA Videx Inc. 1105 N.E. Circle Blvd Tel: (801) 263-3925 Corvallis OR 97330 USA Ziatech Corporation 3433 Roberto Court Tel: (503) 758-0521 San Luis Obispo CA 93401 USA Vista Computer Company 1317 East Edinger Tel: (805) 541-0488 Santa Ana CA 92705 USA Zobex 7343-J Ronson Road Tel: (714) 963-0523 San Diego CA 92111 USA Voice Machine CGD Ltd. Communications Inc. Clifford House Tel: (619) 562-9306 1000 South Grand Ave 185 Lower Richmond Santa Ana CA 92705 Road Zoom Telephonics USA Richmond 207 South Street Surrey TW9 4LT Boston MA 02111 USA Tel: (714) 541-0454 Tel: (01) 878 7661 Telex: 923921 Tel: (617) 423-1072 304 Appendix 12 modem or a printer is a notable omission. No doubt this was a conscious trade-off by IBM to keep the SHORT BOARDS FOR THE IBM PORTABLE PPC's price below that of the COMPAQ. PERSONAL COMPUTER (PPC) AND THE XT The PPC has therefore only one full-length slot and four short slots available for expansion. The PPC does not support a hard disk at this time but THE PPC uses the same system board as the XT so since it has the same Bios, system board and power there is the same tight fit for add-ins, with three full­ supply as the XT, one can readily add a 10 or 20 length expansion slots and five short 'slots'. However, Mb, half-height hard disk in place of a second floppy the slot on the far right of the PPC motherboard is disk drive. not supported. Deciding on an appropriate expansion board for The PPC comes equiped with an IBM Color/ the one full-length slot in the PPC could be quite Graphics Adaptor and a disk drive controller board, tricky. The decision can be deferred by making full each of which takes up a full-length expansion slot. use of the short solts, and for this purpose the The lack of either a parallel or serial port-Ithe former following chart lists suitable manufacturers and their is standard on the COMPAQ) for hooking up a boards.

MANUFACTURERBOARD RAM SERIAL PARALLEL CLOCK,! SPOOLER MEMORY OTHER COMMENTS PRICE NAME DISK PORTS PORTS CAL FUNCTIONS: COLOUR, COMMUNICA­ TIONS, GPIB.

Apstek Inc. Handi 3 Port may be $129 configured as LPT1, LPT2 or LPT3 Apstek Inc. Handi 4 Includes clock set- $139 ting software AST Research Combo Plus * 64 Kb to 256 Utility software $375 (64 Kb) Inc. Kb included to $695 (256 Kb) AST Research I/O Plus II 2 (2nd 1 (opt.) Game port $165 to $315 Inc. opt.) optional AST Research Megaplus II * 2 (2nd 1 (opt.) 64 Kb to 256 Game port $395 (64 Kb) Inc. opt.) Kb optional. Mega- to $845 (256 Pak add-ons can Kb) expand RAM from 384 Kb to 572 Kb ($275 to $395) Hercules Color Card Graphics Includes a parallel $245 printer port and is compatible with the Hercules Gra- phics card IDE Associates IDEAmini 2 (2nd 1 $125 with one opt.) option Jones Futurex Futurex COMMS (data includes a DES $395 ($545 Encryptor security) (Data Encryption with CMOS 300 Standard) chip keys, battery back up and metal encas- ing) National Instru- GPIB-PC GPIB IEEE-488 bus for $385 ments up to 15 devices Quadram Corp. Quad I/O Includes $245 (with 2nd games port series $285) SemiDisk Sys- Semi Disk 512 Kb $1,095 tems 4951 TB Systems Inc. Super I/O Includes games $229 port Tecmar Inc. Bosun Includes clock set- $195 ting software. Equipped for PAL chip Tecmar Inc. Wave 64 Kb to 256 $299 (64 Kb) Kb to $499 (256 Kb) Titan Technolo- Cygnus 1 (opt.) 1 (opt.) Includes games $199 with gies port serial port, $299 with par- allel port Ventel Inc. PC Modem COMMS 300/1,200 bps, $549 Half-Card (modem) auto-answer, auto-dial. Includes comms. software

305 Expanding and Networking Microcomputers INDEX

12-bit A/D Board 182 (Apple) AST-BSC Communications 98 (IBM) 128KDE Soft Disk 156 (Apple) AST-PCOX 98 (IBM) 1553-Net Communications Controller 67 (IBM); 165 (Apple) AST-SNA Communications 98 (IBM) 16K RAM Board 155 (Apple) AVCOM Inc. 13,14 (IBM) 18SRC RAM Card 154 (Apple) Abacus Enterprises Inc. 157 (Apple) 1st Mate 51 (IBM) Ace, The 21 (IBM) 256K RAM Board 45 (IBM) Accelerator lie 198 (Apple) 2nd Mate 51 (IBM) Accelerator PC 42 (IBM) 3 Com Corporation 68 (IBM) Accessing Methods 225 3D Digital Design and Development 184, 188, 189, 195 Ace 116 (Apple) (Apple) Acrosystem-800 182 (Apple) 3D/24BD10 195 (Apple) Acrosystems 182 (Apple) 3rd Mate 52 (IBM) Adalab 187 (Apple) 4 Channel (12-bit) AID 185 (Apple) Adaptec Inc. 76 (IBM) 4609 142 (Apple) Add-In Modems 7 (IBM); 121 (Apple) 4613 36 (IBM) Addram 155 (Apple) 4HDC-62W 76 (IBM) Addram Elite 52 (IBM) 51 inch Diskette Drive Adaptor 82 (IBM) Addram Plus 53 (IBM) 512 K Memory 45 (IBM) Advanced Communications Board 16 (IBM) 512Kb Dynamic RAM 45 (IBM) Advanced Logic Systems 117, 125, 155 (Apple) 512k RAM Card 47 (IBM) Advanced Microcomputer Systems Inc. 38 (IBM) 64-512 RAM Card 47 (IBM) Advantages ofa Printer Buffer 169 (Apple) 64/256 Kb Memory Expansion 45 (IBM) Adwar Video Corp. 135 (Apple) 64KC RAM Card 155 (Apple) Allen Communications 135, 136 (Apple) 6522 Parallel Interface 194 (Apple) Alloy Computer Products 79 (IBM) 7050-42 142 (Apple) Amdek Corporation 28 (IBM); 134 (Apple) 7060-45 142 (Apple) Analog Connection II 187 (Apple) 8-Channel Signal Conditioner 189 (Apple) Analog Input System 188 (Apple) 80 Column Card 116 (Apple) Analog Output (DAC) 186 (Apple) 80-Column Display 116 (Apple) Analog Digital Conversion 87 (IBM) 80-Column Text Card 116 (Apple) Analytic Engines Inc. 199 (Apple) 80-Column Video Terminal Interface 116 (Apple) Antex Data Systems 171 (Apple) 88 Card 150 (Apple) Apparat Inc. 35, 47, 49,54 (IBM); 146 (Apple) Apple Family, The 263 Apple in Industry, The 256 Apple in the Laboratory, The 179 AID + D/A 187 (Apple) Apple CAD Package, An 141 AID 12-16 182 (Apple) Apple CP/M Board, An 147 AID Board 183 (Apple) Apple Computer Inc. 116, 125, 144, 176, 189 AID Connector 182 (Apple) Apple " Expansion Slots, The 11 3 A-D Convertor 182 (Apple) Apple lie Enhancements, The 263 AID Conversion 89 (IBM); 187 (Apple) Apple Modem, An 121 A003 Analog Output System 185 (Apple) Apple Hobby/Prototyping Card 144 AI02 Analog Input System 183 (Apple) Apple Speed Enhancement Board 197 AI13 Interface Card 189 (Apple) Apple Voice Recognition Board 203 A488 IEEE-488 Controller 189 (Apple) Apple " BO-Column Boards 11 5 A800 169 (Apple) Apple" Communications 119 ABM Computer Systems 46,57,60,103 (Apple) Apple " Graphics 133 ACB-2000 76 (IBM) Apple" Industrial Applications 139 AD-3 187 (Apple) Apple" Languages and Operating Systems 147 AD8088/AD128k 150 (Apple) Apple " Memory Expansion 153 ADC89 (IBM); 181 (Apple) Apple " Networking 165 ADS-8211 171 (Apple) Apple " Peripherals 167 ALF Products Inc. 150, 205 (Apple) Apple" peripheral I/O bus 244 AP-100 170 (Apple) Apple " Scientific Applications 179 APB-3024PC 42 (IBM) Apple" Instrumentation and Data Acquisition 181 APIC/G Parallel Interface 171 (Apple) Apple" Multifunction 161 APX252 189 (Apple) Apple" Printer Buffers 169 ARS-170A 135 (Apple) Apple Proc Mod 135 AST Research Inc. 49, 54, 56, 57, 60, 98, 100 (IBM) Apple" Program Development 147 AST-3780 98 (IBM) Apple" Speed Enhancement 197 AST-5251 98 (IBM) Apple " Special Purpose 209 306 Index

Apple /I Voice and Sound 201 CIWP Computers 126, 176 (Apple) Apple-Cat II 127 CAD 1000/CAD 2000 35 (IBM) Apple-DDT 150 CAD Input Devices 31 (IBM); 139 (Apple) Appleseed 25-DE-12 144 CAD Output Devices 32 (IBM); 139 (Apple) Appleseed 32-DE-12 144 CC-232 Multi-Protocol Card 99 (Apple) Appleseed 64K RAM Board 144 CEC 01000 93 (IBM) Appleseed CPU Board 144 CED 1401 183 (Apple) Appleseed EPROM Board 144 CGD International N.V. 207 (Apple) Appleseed Mother Board 144 CI-PCHD 76 (IBM) Appleseed Quad UART 144 CI-PCM 46 (IBM) Appleseed Ribbon Cable System 144 CI-PCM+ 46 (IBM) Appleseed Text Board 145 CIC-PCM/CIC-PCM+ 47 (IBM) Appleseed Universal Board 145 COAXJ3278 100 (IBM) Appleseed WROM 145 CP/M41 (IBM); 148 (Apple) Applesurance II 150 CP/M 80 Boards 39 (IBM); 147 (Apple) Appli-Card 148 (Apple) CP/M Card 149 (Apple) Applied Analytics Inc. 199 (Apple) CP/M Boards 39 (IBM) Applied Business Computer 46, 56, 57 (IBM) CP/M and the Apple 147 Applied Engineering 118, 149, 157, 163, 182, 183, 188, CPS Multifunction Card 161 (Apple) 189, 204 (Apple) CXI Inc. 103 (IBM) Applied Logic Inc. 45 (IBM) Cabling Considerations 227 Apstek Inc. 10, 48, 55, 81 (IBM) California Computer Systems 124, 126, 170, 189 Arcnet-PC 67 (IBM) (Apple) Ariel Corporation 94 (IBM) California Printer Interface 172 (Apple) Aristocard 68000 198 (Apple) Calling Four 177 (Apple) Artist 21 (Apple) Cambridge Electronic Design Ltd. 184 (Apple) Async Card 10 (Apple) Capital Equipment Corp. 93 (IBM) Asynchronous Serial Interface 124 (Apple) Captain 54 (IBM) Asynchronous Devices 96 (IBM) Cash 206 (Apple) Atlantic Computers 128 (Apple) Central Point Software Inc. 152 (Apple) Atron 41 (IBM) Centronics Printer Interface 171, 172 (Apple) Aughton Automation 185 (Apple) Cermetek Microelectronics 12 (IBM) Autoprom 146 (Apple) Chairman 22 (IBM) Chancellor Computer Corp. 35 (IBM) Chatsworth Data Corp. 82 (IBM); 177 (Apple) Chrislin Industries Inc. 46, 48, 76 (IBM) Clock, The 163 (Apple) Clock Calendar 54 (IBM) Clock/Calendar 161 (Apple) B & D Electronics 124 (Apple) ClusterNet 3270 100 (IBM) BCD Associates Inc. 25 (IBM); 136 (Apple) Code Preparation and Translation 256 BCD450 135 (Apple) Cogent Data Technologies Inc. 77 (IBM) BG-Board 188 (Apple) Color Pacer 22 (IBM) BS II Plus 124 (Apple) Colorplus 22 (IBM) Baby Blue 41 (IBM) Colour Graphics 21 (IBM); 134 (Apple) Barr/HASP 99 (IBM) Colour/Graphics Monitor Adaptor 22 (IBM) Baby Talk 99 (IBM) Columbus Instruments International Corp. 183, 192, Barr Systems Inc. 99 (IBM) 193 (Apple) Baseband or Broadband? 227 Combination Peripheral Board 82 (IBM) Benefits from Local Area Networks 221 Combo II Card 54 (IBM) Bi·Comm Systems Inc. 193 (Apple) Combo Plus 54 (IBM) Bit-3 Computer Corp. 38 (IBM); 116, 125, 135 (Apple) Communications with User Programs 33 (IBM); 141 Bizcomp 14 (IBM); 128 (Apple) (Apple) Blue Lynx 3270 99 (IBM) Communications Interface Card 125 (Apple) Blue Lynx S/34, S/36, S/38 99 (IBM) Compatibility 115 (Apple) Blue Lynx VTERM 99 (IBM) Computer Aided Design (CAD) 35 (IBM); 142 (Apple) Boilerplating 32 (IBM); 140 (Apple) Communications Security Lock 128 (Apple) Booster Card 198 (Apple) Computer Stations Inc. 136 (Apple) Bosun 53 (IBM) Computer Systems and Bus Hierarchy 241 Bubble Memory 44 (IBM) Computerscope 190 (Apple) Bubdisk 154 (Apple) ComputoTech Systems 136 (Apple) Buffer Features 169 (Apple) Comstock Inc. 188 (Apple) Bufferboard 171 (Apple) Concept 100 35 (IBM) Burple 130 (Apple) Concept Technologies Inc. 23, 27, 35 (IBM) Bus Standards 242 Configuring the Mega-Board 212 Bus Structures 240 Contro/95 (IBM) Business Card 53 (IBM) Control Systems 22, 69 (IBM)

307 Expanding and Networking Microcomputers

Copy Programs 147 (Apple) Displays 115 (Apple) Copycard 151 (Apple) Distance Tender 92 (IBM) Corporate Users 223 Dithertizer lie 136 Corvus Systems 70 (IBM); 165 (Apple) Douglas Electronics Inc. 144, 145 (Apple) Cuecard 54 (IBM) Dual Dos 149 (Apple) Cueram 46 (IBM) Dual Thermometer 190 (Apple) Cygnus 54 (IBM) Dual-Comm Plus 125 (Apple) Dynamic Disk 77 (IBM); 170 (Apple) Dynamic Memory 48 (IBM) Dynamic Solutions Corp. 163 (Apple) D/A Convertor 186 (Apple) D109 Digital I/O Interface 195 (Apple) DA2801/DA2805 90 (IBM) DAC89 (IBM); 185 (Apple) E-Z Card 149 (Apple) DASCON-1 90 (IBM) E-Z Color Graphics Interface 134 (Apple) DCP/88 100 (IBM) EN-Link Inc. 165 (Apple) DOS/MS-DOS 149 (Apple) ENC-300 14 (IBM) DT2808 90 (IBM) Easiboard 55 (IBM) DT2818 90 (IBM) Easitech Corp. 55 (IBM) DT2832/DT2834 184 (Apple) Echo-II 207 (Apple) DVM-11 134 (Apple) Echo-PC 109 (IBM) DVM-80E 134 (Apple) Eight Channel D/A Card 186 (Apple) DX-1 205 (Apple) ELAN 235 DADIO 89 (IBM) Electric Mouth 207 (Apple) Dark Star Systems 152 (Apple) Electronic Disk 48 (IBM) Dash-1 35 (IBM) Electronic Prototyping 36 (IBM); 142, 170 (Apple) Data Acquisition 90 (IBM); 187 (Apple) Encore/Encore+ 55 (IBM) Database Machine, The 76 (IBM) Encryptor Enc-200 129 (Apple) Data Communications 5, 10 (IBM); 119, 124 (Apple) Enhanced Graphics 133 (Apple) Data Communications (Data Encryption) 14 (IBM); 128 Enhanced Serial Interface 125 (Apple) (Apple) Enhancement Technology Corporation 199 (Apple) Data Communications (Modem) 11 (IBM); 127 (Apple) Enhancer II 209 (Apple) Data Communications (Multifunction) 16 (IBM) Eprom Programmer 146 (Apple) Data Communications (Special Purpose) 16 (IBM); 130 Era 211 (IBM); 127 (Apple) (Apple) eRAM 80 118 (Apple) Data Communications (Videotex) 15 (IBM); 129 (Apple) Epson MX-80 Printer Interface 172 (Apple) Data Encryption 8 (IBM); 122 (Apple) Ether Series 227 Data Flows 85 (IBM); 179 (Apple) Etherlink 68 (IBM) Data Translation Inc. 90 (IBM); 184 (Apple) Ethernet Companion 68 (IBM) Datacopy Corp. 26 (IBM) Ethernet Interface 165 (Apple) Datacopy Model 90 96 (IBM) Ethernet Link 68 (IBM) Dataflex Ltd. 49, 57, 62 (IBM) Eventide Inc. 190 (Apple) Datalock 154 (Apple) Evercolor 23 (IBM) Datalok 128 (Apple) Everex Systems Inc. 20, 21, 23, 57, 78, 80 (IBM) Davong Systems Inc. 69,70,78 (IBM); 171 (Apple) Evergraphics 20 (IBM) Daystar Systems Inc. 47, 63 (IBM) Excalibur Technologies Corp. 210 (Apple) Decillonix 205 (Apple) Expand-A-Ram 156 (Apple) Desnet NIU 68 (IBM) Extended 80-Column Card 116 (Apple) Destek Group, The 68 (IBM) Extended Graphics Boards 19 (IBM) Development of Microcomputer Buses 240 Diagram Manipulation and Presentation 32 (IBM); 140 (Apple) Digisolve Ltd. 25 (IBM) FCL 2000 190 (Apple) Digital Communications Association Inc. 69 (IBM); 101 Falcon Technology Inc. 79 (IBM) (Apple) Parallel Printer Adaptor 81 (IBM) Digital Conversion 92 (IBM); 195 (Apple) Faxscan Inc. 187 (Apple) Digital Input Board 195 (Apple) Fixed Disk Drive Adaptor 77 (IBM) Digital Output Board 186 (Apple) Flashcard 157 (Apple) Digital-analog Conversion 88 (IBM) Flexibility 95 (IBM) Digitek (International) Ltd. 117, 158, 176 (Apple) Fleximem 48 (IBM) Digitisation 25 (IBM) Flexipro 41 (IBM) Dilog PC Products 48 (IBM); 136 (Apple) Flexitallic Controls Ltd. 146, 155, 186, 191 (Apple) Diplomat Video Digitiser 136 (Apple) Floppy Disk Drives 168 (Apple) Director 11 (IBM) Floppy Disks 169 (Apple) Disco-RAM 156 (Apple) Forget-Me-Not CMOS Memory 44 (IBM) Discwasher 178 (Apple) Forte Data Systems 102, 103 (IBM) Dispatcher 125 (Apple) Franklin Ace 1000/1200, The 263

308 Index

Franklin Computer Corp. 116 (Apple) How to Expand your Apple 1/ Computer 113 Frontier Technologies Corp. 24 (IBM) How to Expand your IBM PC 1 Full-View 80 116 (Apple) How to Install a PC Board 1 Function Pak 512 55 (IBM) Future for Local Area Networks, The 238 FutureNet 35 (IBM) Futurex Security Systems 14 (IBM); 129 (Apple) liD Plus II 55 (IBM) liD Processor 56 (IBM) I/OA+ 56 (IBM) IBEX Computer Corp. 80 (IBM) GCDS 191 (Apple) IBM CAD package, An 33 GE 64k 80 Column Card 117 (Apple) IBM/Apple Communication via a Serial Link 266 GM Enterprise Inc. 110 (IBM) IBM 80 Card 41 GPIB (lEEE-488) Interface 189 (Apple) IBM Computer Aided Design (CAD) 31 GPIB Interfacing 93 (IBM); 189 (Apple) IBM Corp. 15, 21, 22,46, 77, 81, 82 GPIB-PC 93 (IBM) IBM Instrumentation and Data Acquisition 88 Gateway Communications Inc. 42, 70 (IBM) IBM Modem Card, An 7 Genie 5 + 5 77 (IBM); 170 (Apple) IBM PC Languages and Operating Systems 39 Genie 5 X 10 X 15 X 2077 (IBM); 170 (Apple) IBM PC Communications 5 Genie Computer Corp. 77, 80 (IBM); 162 (Apple) IBM PC Graphics 19 Genie X 5 77 (IBM); 170 (Apple) IBM PC Industrial Applications 31 Glanmire Electronics Ltd. 117, 162 (Apple) IBM PC Memory Expansion 43 Glossary 273 IBM PC Modem 12 GrafMaster II 172 (Apple) IBM PC Multifunction Boards 51 Gram Business Systems Ltd. 173 (Apple) IBM PC Networking 67 Graphcard 100 23, 27 (IBM) IBM PC Peripherals 73 Graphic Plus 27 (IBM) IBM PC Scientific Applications 85 Graphicard 172 (Apple) IBM PC Special Purpose 111 Graphics Dazzler 23 (IBM) IBM PC Terminal Emulation 95 Graphics Edge 23 (IBM) IBM PC Voice and Sound 107 Graphics Master 23 (IBM) IBM Personal Computer I/O Bus 245 Graphics Pacer 20 (IBM) IBM Voice Recognition Board, An 109 Graphitti 172 (Apple) IBM XT Building Blocks 210 Grappler+ 172 (Apple) IBM's PC Network 246 Great Lakes Computer Peripherals Inc. 80 (IBM) IBM-BUB 44 Group Response System 111 (IBM); 209 (Apple) IBM-PPA 81 Group Technology Ltd. 188 (Apple) IBM-SID 10 ICE II 145 (Apple) IDE Associates Inc. 12, 24. 46, 56, 69, 78, 79, 101 (IBM) IEEE-488 Background 249 IEEE-488 Benefits 249 Half Height Hard Disk Controller 77 (IBM) IEEE-488 Bus Connections 252 Half-Megabyte Dynamic Memory 46 (IBM) IEEE-488 in Action 250 Handi 1 55 (IBM) IEEE-488 Interface 99 (IBM) Handi 2 48 (IBM) IEEE-488 Interface Card 189 (Apple) Handi 3 81 (IBM) IHR 24 (IBM) Handi 4 10 (IBM) IPB 173 (Apple) Handshaking Signals 216 IPB-16 k 173 (Apple) Hard Disk Controller 77, 78 (IBM) IQS Inc. 194 (Apple) Hard Disk Options 73 (IBM) Ideaboard 46 (IBM) Hard Disks 73, 76 (IBM); 170 (Apple) Ideacomm 1200 12 (IBM) Hardware 74 (IBM) Ideacomm 3278 100 (IBM) Hardware/software Integration 257 Ideadisk 78 (IBM) Hardware Considerations 74 (IBM); 167 (Apple) Ideagraph 44 (IBM) Hardware Construction and Testing 257 Ideamini 56 (IBM) Hayes Microcomputer Products Inc. 14 (IBM); 127 Ideanet 69 (IBM) (Apple) Ideaplus 56 (IBM) Hercules Computer Technology 21 (IBM) Image Technology Inc. 55 (IBM) Hercules Graphics Card 21 (IBM) Imaging Technology Inc. 26 (IBM) Heyden & Son Ltd. 183, 187, 194 (Apple) In-circuit Emulation using ICE 1/259 Hi-Res Graphic Printer Interface 193 (Apple) Indigo Data Systems Inc. 58 (IBM); 155 (Apple) Hicomp Computer Corp. 45 (IBM) Info-Mate 212PC 12 (IBM) High Speed ADC 184 (Apple) Infocrypt 129 (Apple) High-Density Memory Board 48 (IBM) Infocrypt 129 (Apple) Hostess 68 (IBM) Information Technologies Inc. 101 (IBM) How Emulation Works 96 (IBM) Innovative Measurements Inc. 162 (Apple) How to Build an IBM XT Lookalike 211 Instrumentation 92 (IBM); 189 (Apple)

309 Expanding and Networking Microcomputers

Intelligence on the Desk? 228 Memosoft SA 150 (Apple) Intelligent Instrumentation Model 1104 182 (Apple) Metacard 198 (Apple) Intelligent Technologies Corp. 100 (IBM) Metamorphic Systems Inc. 199 (Apple) Interactive Structures Inc. 172, 175, 183, 186, 188, 195 Metascope 192 (Apple) (Apple) Metatek Inc. 192 (Apple) Interlan Corp. 69 (IBM); 165 (Apple) MetraByte Corp. 91, 92 (IBM) Interphase Corp. 78 (IBM) Mice 80 (IBM) Irmalette 69 (IBM) Micro Control Systems Inc. 36 (IBM); 134 (Apple) Micro D-Cam 35 (IBM); 142 (Apple) Micro General Corp. 111 (IBM); 202 (Apple) Micro Integration Engineering Inc. 42 (IBM) JDR Microdevices 142, 144, 145 (Apple) Micromint, The 35 (IBM); 134, 142, 208 (Apple) Jetstreamer 20/40 80 (IBM) Mill 6809, The 151 (Apple) John Bell Engineering Inc. 45, 93 (IBM); 146,182,194, Mill Pascal, The 151 (Apple) 207 (Apple) Micro-Watch 162 (Apple) MicroGraphics Technology Corp. 27 (IBM) Microanalyst 2000 93 (IBM); 192 (Apple) Microbuffer II 173 (IBM) Kensington Microware 60 (IBM) Microbuffer 11+ 173 (Apple) Know-Drive 157 (Apple) Microbuffer illS 173 (Apple) Microcom 11 (IBM); 127 (Apple) Microcomputer Systems Inc. 109 (IBM) Microconsultants Computers Ltd. 126, 184, 186, 195 LA-100 191 (Apple) (Apple) LA-200 92 (IBM) Microcosm 38 (IBM) LCI-8 191 (Apple) Microcosm M(X) 37 (IBM) Lab Master 91 (IBM) Microdimensions Inc. 184 (Apple) Lab Tender 89 (IBM) Microlog 41, 48, 99 (IBM) Legend Industries Ltd. 154, 155, 156, 158 (Apple) Micromodem lie 127 Linkup 501 101 (IBM) Microsetter 111 (IBM); 209 (Apple) Little Red RAM 48 (IBM) Microsignal 206 (Apple) Local Area Network Standards 270 Microsignal SR-32 206 (Apple) Microsoft Corp. 49, 61 (IBM); 149,156 (Apple) Microspeed 199 (Apple) Midas 24 (IBM) MA Systems Inc. 28, 56 (IBM); 174 (Apple) Midwest Data Source Inc. 130 (Apple) MBM-500 44 (IBM) Mimic Inc. 206 (Apple) MC1 Music Card 204 (Apple) Mini-Mega 78 (IBM); 171 (Apple) MC16 Music Generator 205 (Apple) Model 450 VTR Control Interface 135 (Apple) MCS-701 188 (Apple) Model 65 aGen 1"92 (Apple) MD-1000 184 (Apple) Model 85 aScope 192 (Apple) MEM 512 46 (IBM) Modem 1200 12 (IBM) MM-1/PC 80 (IBM); 172 (Apple) Modem 300 12 (IBM) MNC International 48, 82 (IBM) Modem Card 12 (IBM); 128 (Apple) MP Expansion Memory 48 (IBM) Modem 6 (IBM); 120 (Apple) MPC Peripherals Corp. 11,44, 81 (IBM); 154 (Apple) Modem Types 6 (IBM); 120 (Apple) MSI-VS01 109 (IBM) Monochrome Graphics 19 (IBM) Magic Typer 209 (Apple) Monochrome and Printer Adaptor 21 (IBM) Magiccard 56 (IBM) Mountain Computer Inc. 77,110 (IBM); 146,155,156, Mainframe and Minicomputer Users 213 162, 163, 170, 187, 204, 208 (Apple) Making the RS232C Work 218 Mouse, The 75 (IBM) Manufacturers' Addresses 291 Mouse System Corp. 81 (IBM) Manufacturers' Products 283 Multi 57 (IBM) Marinco Inc. 42 (IBM) Multi-Modem PC 12 Mastergraphics 1 Adaptor 27 (IBM) Multi-OS 78 (IBM); 171 (Apple) Maverick SMD PC-80 78 (IBM) Multi-Tech Systems Inc. 128 (Apple) Maximizer 57 (IBM) Multibus (1£££-796) 243 Maynard Electronics 60, 61 (IBM) Multibus Adaptor 38 (IBM) McMill 151 (Apple) Multibus Interfacing 38 (IBM) Mega A+ 57 (IBM) Multicore 162 (Apple) Mega-board, The 211 Multifunction 51 (IBM); 161 (Apple) Megaplus II 57 (IBM) Multifunction Benefits 161 (Apple) Mem/DOS 149 (Apple) Multifunction Graphics 27 (IBM) Memory Expansion Board 49 (IBM) Multigraph 24 (IBM) Memory Master lie 157 Multilink 229 Memory Plus 155 (Apple) Multilink Interface Board 165 (Apple) Memory Types 43 (IBM); 153 (Apple) Multilink Network Interface Card 69 (IBM)

310 Index

MultiModem lie 128 PC Probe 41 Multitech Systems Inc. 13 (IBM) PCTechnologies Corporation 11, 46, 54, 55 (IBM) Mupid Computer Gesselschaft mbH 15 (IBM) PC Ware Inc. 11, 45, 54, 81 (IBM); 116, 125, 126, 172, Mupid-CEPT Decoder 14 (IBM) 173, 176 (Apple) Music 204 (Apple) PC Weighmate 111 (IBM); 210 (Apple) MusicSystem 204 (Apple) PC+ Products 22 (IBM) Multiple-Adaptor Interface (MAl) 28 (IBM) PC-1 Powerline Controller 193 (Apple) Mylex Corporation 22 (IBM) PC-800 193 (Apple) PC 8000 78 (IBM) PC-DISC 79 (IBM) PC-LNIM 70 (IBM) National Instruments 93 (IBM) PC-STaR 79 (IBM) National Instruments' 1£££-488 board 251 PC/Color 25 (IBM) National Memory Systems Corporation 78 (IBM) PC/Monochrome 20 (IBM) Need for Networking, The 221 PC1200B 13 (IBM) Neptune 157 (Apple) PC3278/79 Emulator/Adaptor Board 102 (IBM) Net/Plus 69 (IBM); 165 (Apple) PC640 24 (IBM) Netronics Research & Development Ltd. 207 (Apple) PC78-2/3/4 102 (IBM) Network & Multifunction Card 69 (IBM) PC:lntelliModem 13 (IBM) Network Interface Unit 70 (IBM) PCOX Coaxial Interface Board 103 (IBM) Network Interface Units 228 PCT 256K 46 (IBM) Networker 128 PCVision 25 (IBM) Nine Leading Local Area Networks 229 PDI208SP 58 (IBM) Next Steps 238 PDI464SP 58 (IBM) Nine Tiles Computer Systems Ltd. 165 (Apple) PDI464SS 58 (IBM) Non-Volatile Memory 44 (IBM); 154 (Apple) PDA232C 125 (Apple) Northwest Instrument Systems Inc. 93 (IBM); 192 PDIB-128/38445 (IBM) (Apple) PDQ Super-32 199 (Apple) Novation 13 (IBM); 127 (Apple) PI012 92 (IBM) Novell Inc. 71 (IBM); 225 PKASO/U Universal Parallel Printer Interface 174 (Apple) Number Nine Computer Engineering Inc. 198 (Apple) PM-300 13 (IBM) PMS Type 201 193 (Apple) PS-ICP 103 (IBM) PS-SC2 103 (IBM) OMR-1000 82 (IBM); 177 (Apple) PS-UC2 103 (IBM) OMR-2000 77 (IBM) PSIO 174 (Apple) Omniboard 57 (IBM) PXA42 (IBM) Omnigraph 174 (Apple) Pacific Micro Systems Inc. 199, 195 (Apple) Omninet 70 (IBM); 165 (Apple); 232 PROM Blaster 38 (IBM); 146 (Apple) Orange Interface 174 (Apple) PROM Blowing 38 (IBM); 146 (Apple) Orange Micro Inc. 171, 173, 174 (Apple) PROM Programmer 146 (Apple) Orbital Systems Inc. 116, 149, 151, 156 (Apple) PROM-2000 38 (IBM) Other Peripherals 82 (IBM); 177 (Apple) Pact Electronics (UK Sales) Ltd. 116, 126, 134, 175, Orchid Technology Inc. 42 (IBM); 222 186 (Apple) Owl Micro-Communications Ltd. 129 (Apple) Para-graph 175 (Apple) Owl MultiCom 129 (Apple) Paradise Multi Display Interface 28 (IBM) Owltel 129 (Apple) Paradise Systems Inc. 28 (IBM) Paragraph-I 175 (Apple) Parallel Aristocard 175 (Apple) Parallel I/O Interface 175 (Apple) p.e.T. Inc. 46 (IBM) Parallel Interface 170 (Apple) PIS Buffer Card 174 (Apple) Parallel Printer Interface Card 176 (Apple) P500 145 (Apple) Parle PC 109 (IBM) PC Express 101 (IBM) Particular Networks 229 PB-IBM 70 Passport Designs Inc. 204 (Apple) PC Development Aid 40 Pathway Designs Inc. 103, 104 (IBM) PC eXTender 79 Pathway/2780/3780 103 (IBM) PC Hardware/software Interface 39 Pathway/BSC-3270/3770 103 (IBM) PC in the Laboratory, The 85 Pathway/Communications Adaptor 104 (IBM) PC Marketplace, The 264 Pathway/SNA-3270/3770 104 (IBM) PC Memorycard 46 Percom Data Corporation 70 (IBM) PC Modem 1200 13 Personal Computer Networking 221 PC Modem Half Card 13 Personal Computer Products Inc. 148, 150 (Apple) PC Mouse 81 Persyst Products 21, 25, 62, 100, 101 (IBM) PC MultiPak/PC Multi/P 58 Piiceon Inc. 80 (IBM) PC Net 231 Plan 4000 Network Interface 233 PC Peacock 28 Populating the Mega-board 212

311 Expanding and Networking Microcomputers

Practical Peripherals 130, 162, 172, 173, 174, 175 Retailer, The 111 (IBM) (Apple) Rio Plus 59 (IBM) Printer Adaptor 81 (IBM) Robo 1000 142 (Apple) Printer Plus 81 (IBM) Robo 500 142 (Apple) PRinterface 175 (Apple) Robocom Ltd. 142 (Apple) PrinterMate 176 (Apple) Role of CAD, The 31 (IBM); 139 (Apple) Printers 81 (IBM); 171 (Apple) Role of Graphics, The 19 Prior Investment 238 Romplus + 155 (Apple) Proclock 162 (Apple) RomWriter 146 (Apple) Profit Systems Inc. 24, 53 (IBM) Rovino 145 (Apple) Program Debugging using the ICE 1/259 Rovino's ICE /I Board 258 Program Development 39, 41 (IBM); 148,150 (Apple) Prometheus Products Inc. 150, 157, 164, 172, 174 (Apple) Pure Data Ltd. 45, 58 (IBM); 125 (Apple) S-100 Bus (lEEE-696) 244 S'Card 158 (Apple) SCS PC Net 71 (IBM) SOI-ESC+ 60 (IBM) 0-500-AP 171 (Apple) SOl-Floppy 82 (IBM) 0-500-IB 79 (IBM) SOI-SSC 60 (IBM) 0-68 151 (Apple) SSB-Apple 207 Ouad 512+ 58 (IBM) SSM Microcomputer Products Inc. 189 (Apple) Quad Disk Controller 79 (IBM) STB Systems Inc. 27, 49, 59, 61, 81 (IBM); 117, 157 Quad I/O 59 (IBM) (Apple) Quadboard 59 (IBM) STB-80 Video Board 117 (Apple) Quadcolor 28 (IBM) SWllnternational Systems 70 (IBM) Quadlink 16 (IBM); 226 SX-605 71 (IBM) Quadnet VI 70 (IBM) SandStar Memory Card 60 (IBM) Quadram Corporation 16, 28, 59, 71, 79 (IBM); 118, SandStar Multifunction 60 (IBM) 162,163,171 (Apple) Santa Clara Systems Inc. 49, 71, 78 (IBM); 171, 222 Ouadvue 59 (IBM) (Apple) Quentin Research Inc. 79 (IBM); 170, 171 (Apple) Saturn RAM 158 (Apple) Quick Disc 49 (IBM) Savvy 210 (Apple) Ouickloader 155 (Apple) Saybrook 199 (Apple) Qwerty Inc. 151 (Apple) Science Card 89 (IBM) Scion Corporation 24 (IBM) Scott Instruments 206 (Apple) Screenmaster 80 117 (Apple) RC Electronics 190 (Apple) Scribe Master 10 (IBM) R.O.S. 165 (Apple) Scribe Tender 16 (IBM) RAM Card 49 (IBM) Selecting Boards for the Apple 1/113 RAM Disk 47 (IBM); 156 (Apple) SemiOisk 4951 49 (IBM) RAM Disc Emulation 43 (IBM); 153 (Apple) SemiDisk Systems 49 (IBM) RAM Disc Operation 44 (IBM) SeriALL 129 (Apple) RAM Disc Uses 44 (IBM) Serial Aristocard 126 (Apple) RAM-2 56 (IBM) Serial Interface 126, 207 (Apple) RAM-Master 157 (Apple) Serial Transmission 119 (Apple) RGB Colour Video Interface 134 (Apple) Series 401 FFT 193 (Apple) RS232 Serial/Communications Interface 125 (Apple) Shadow/VET 206 (Apple) RS232C Serial Interface, The 215 Short Boards for the IBM Portable Personal Computer RS232C Standard, The 215 (PPC) and the XT 305 RS422 Multiplexer/Convertor 126 (Apple) ShareNet X and ShareNet S 234 RTA 331 94 (IBM) Sharing 211 Ramcard 49 (IBM); 156 (Apple) Sigma Designs Inc. 23,57,77,78,82 (IBM) Ramex 128 158 (Apple) Simon Computers Ltd. 47 (IBM); 126, 175, 198 (Apple) Ramex 16 155 (Apple) SimonCard 47 (IBM) Ramplus 59 (IBM) Six Pack Plus 60 (IBM) Ramplus + 155 (Apple) Slot Economy 1 Rana Disc Drive, The 266 Slotted Rings 216 Rana Systems 170 (Apple) Small Systems Engineering Ltd. 41 (IBM) Random Access Inc. 80 (IBM); 169 (Apple) Smarterm II 117 (Apple) Raytronics 41, 48, 59 (IBM) Smartmodem 1200B 14 (IBM) Reactive Systems Inc. 111 (IBM); 209 (Apple) Smorgasboard 56 (IBM) Realclock 162 (Apple) Snapshot Copykit 152 (Apple) Redicore 162 (Apple) SoftCard 149 (Apple) Resolution 33 (IBM); 141 (Apple) Software 1; 75 (IBM) Retail Solutions Inc. 112 (IBM) Software: The missing Link 238

312 Index

Software Considerations 74 (IBM); 168 (Apple) Tecmarlnc. 10, 12, 16,23,25,26,44,47,48,50,51,52, Software Testing 256 53, 54, 62, 68, 89, 92, 94, 109, 110 (IBM); 184, 186 Softweigh 194 (Apple) (Apple) Softworks Inc. 166 (Apple) TeleTypesetting Co. 111 (IBM); 209 (Apple) Sound Processing 205 (Apple) Thermex 194 (Apple) Soundchaser MX-5 204 (Apple) Thermocouple Interface 194 (Apple) Soundchaser SC Series 204 (Apple) Thunderclock Plus 163 (Apple) Southern California Research Group 155 (Apple) Thunderware Inc. 163 (Apple) Space Tablet 36 (IBM); 142 (Apple) Time Master 61 (IBM) Special Purpose 111 (IBM); 201 (Apple) Time Spectrum 62 (IBM) Specification and Design 256 Timemaster II 163 (Apple) Speech Digitisation 110 (IBM); 208 (Apple) Timeport 62 (IBM) Speech Master 110 (IBM) Titan 62 (IBM) Speech Recognition 109 (IBM); 206 (Apple) Titan Technologies Inc. 42,55,62 (IBM); 157, 158, 198 Speech Synthesis 109 (IBM); 207 (Apple) (Apple) Speech Synthesis and Recognition 107 (IBM); 201 (Apple) Token Passing 226 Speech Synthesiser 207 (Apple) Token Passing Ring, The 246 Speed Enhancement 41 (IBM); 198 (Apple) Topology 223 Standard Microsystems Corporation 68 (IBM) Total Logic Corporation 92 (IBM); 191 (Apple) Star213 Transcore 163 (Apple) Static RAM/ROM 47 (IBM) Transend Corporation 12 (IBM); 128 (Apple) Stellation Two 151, 200 (Apple) Transmission Modes 215 Stepper Motor Controller 94 (IBM) Trio 62 (IBM) Stowaway 10 80 (IBM) Turbo 186 42 (IBM) Strategic Systems Technology 150 (Apple) Two or Three Dimensional Output 32 (IBM); 140 (Apple) Strawberry Tree Computers 185, 190 (Apple) Types of Local Area Network 223 Streaming Tape Controller 80 (IBM) Street Electronics Corporation 109 (IBM); 207 (Apple) Suitable for Whom? 212 Super I/O 61 (IBM) U-4Disc 166 (Apple) Super I/O Board 188 (Apple) U-A/D 105 (IBM) Super Music Synthesiser 204 (Apple) U-BCD 194 (Apple) Super Parallel Card 176 (Apple) U-CCT 163 (Apple) Super Print Master III 176 (Apple) U-Cent 172 (Apple) Super Rio 61 (IBM) U-ODT 194 (Apple) Superam 49 (IBM) U-M68000 200 (Apple) Superboard 60 (IBM) U-Microcomputers Ltd. 54, 89 (IBM); 117,127,146, Supercharger 42 (IBM) 149, 156, 163, 166, 176, 185, 194, 200, 208, 210 (Apple) SuperSprite 134 (Apple) U-Nscrump 210 (Apple) Supertalker II 110 (IBM) U-Port 127 (Apple) Supertalker S0200 208 (Apple) U-Print 16 176 (Apple) Swamping of Technical Superiority 238 U-Prot2 146 (Apple) Sweet Talker 207 (Apple) U-RAM 16/32/64/128 156 (Apple) Synchronous Devices 96 (IBM) U-S232 127 (Apple) Synchronous Serial Interface 126 (Apple) U-Sci Ltd. 191 (Apple) Synetix Micro Products Inc. 135, 157 (Apple) U-Talk 208 (Apple) System Mimic 205 (Apple) U-Term 117 (Apple) SystemCard 61 (IBM) U-Z80 149 (Apple) System Compatible Microcomputers 265 U.S. Robotics Inc. 11, 14 (IBM) USR PC Modem 14 (IBM) Ultra 55 62 (IBM) Ultra-RAM 47 (IBM) TD-19 Time Link Multifunction Board 163 (Apple) Ultraterm 117(Apple) TG-3006/TG-3012/TG-3020 80 (IBM) Ungermann-Bass Inc. 70 (IBM) TG-3135/TG-3170 80 (IBM) UniPrint 176 (Apple) TM-AD211 184 (Apple) Universal I/O 93 (Apple) TM-AD213 185 (Apple) Users of Personal Computers Only 213 TM-DA101 186 (Apple) Using an IBM PC for Data Logging 34 TS-100 80 (IBM) Table of Local Area Networks 229, 230 Tall Tree Systems 56 (IBM) Tallgrass Technologies Corp. 80 (IBM) V1200 171 (Apple) Tape 80 (IBM) VBLS/VET 206 (Apple) Tapes 74 (IBM) VGP 64 25 (IBM); 135 (Apple) Techland Systems Inc. 99 (IBM) VIPC 25 (IBM) Technical Aspects of PC Compatibility 264 VLSI Networks Inc. 165 (Apple) Techport Inc. 175 (Apple) VLXI Networks Inc. 68 (IBM)

313 Expanding a""d Networking Microcomputers

VMC 2020 207 (Apple) Waveshaper 194 (Apple) VMI 136 (Apple) Wesper Microsystems 46,47,81 (IBM); 118,156,166, Vector Electronic Company 36 (IBM); 142 (Apple) 172, 177 (Apple) Vectrix Corporation 24 (IBM) Which Emulation Product? 96 (IBM); other manufacturers Ven-Tel Inc. 13 (IBM) 96 Vergecourt Ltd. 155, 158 (Apple) What is a Microcomputer Bus? 239 Versacard 163 (Apple) What is Disk Emulation? 43 VersaModem 128 (Apple) What is Emulation? 95 Video Cassette Recorder Controller 25 (IBM) Why the IBM PC requires a Multifunction Board 51 Video Tape/disk 135 (Apple) WildCard 2 152 (Apple) Video Van Gogh 26 (IBM) Wizard 16K 156 (Apple) Video and Graphics 20 (IBM); 133 (Apple) Wizard 80 118 (Apple) Video DisclTape Controller 25 (IBM) Wizard BP0177 (Apple) Videoterm 118 (Apple) Wizard IPI 177 (Apple) Videotex 15 (IBM) Wizard Megadisk 166 (Apple) Videotex 9 (IBM); 123 (Apple) Wizard PC Memory 47 (IBM) Videotex and the Personal Computer 9 (IBM); 123 (Apple) Wizard SBO 177 (Apple) Videotex on the IBM PC 10 Wizard SOB 177(Apple) Videotex on the Apple 1/124 Wizard Spooler 81 (IBM) Videx Inc. 118, 174, 177, 209 (Apple) Word Power 128, 146, 149, 209 (Apple) Viewmaster 118 (Apple) Vision-80 118 (Apple) Vista Computer Company 118, 169, 171 (Apple) Vitamill 200 (Apple) X-Net 71 (IBM) Voice Input Module (VIM) 206 (Apple) XAD1 188 (Apple) Voice Machine Communications Inc. 206, 207 (Apple) XAD2 188 (Apple) Voice Recognition 108 (IBM); 202 (Apple) XCOMP Inc. 71 (IBM) Voice Recognition 109 (IBM) Voice Synthesis 107 (IBM); 201 (Apple) Voice and Sound 196 (Apple) Volatile Memory 45 (IBM); 155 (Apple) Z-80 Plus 149 (Apple) Vynet Corporation 110 (IBM); 200 (Apple) ZM 256 47 (IBM) Vynet V101NI, Vynet V102NS 110 (IBM) ZT 1488 92 (IBM) Vynet V101A/VS 208 (Apple) ZenTek Corporation 47 (IBM) Ziatech Corporation 92 (IBM) Zobex 2SP 11 (IBM) Zobex Corp. 11,47, 76 (IBM) WHAMS 1-XT 80 (IBM) Zoom Telephonics 128 (Apple) Wave 50 (IBM) Zynar (UK) Ltd. 224 (Apple)

314