Welcome to ~=003~The Z-Letter~=001~, a newsletter for the community of CP/M andZ-system users. Everything in this issue is copyright ~=005~q~=001~ 1991 bythe editor: David A.J. McGlone, Lambda Software Publishing, 720 S. SecondStreet, San Jose, California 95112-5820, phone (408) 293-5176.
The purpose of this magazine is to spread the news about new developments inthe community, and to help newcomers get the most out of their machines. Sosend us the news about your new software or hardware, your opinion of someoneelse's product, that article you've been meaning to write, your praise, gripes,or just plain questions! This is the place.
..c
~=002~Submitting material for publication
~=001~Material may be submitted on 5~=010~$~=001~" diskette in almost anyformat, on 8" diskette, or printed or typewritten on clean white unlined paper. The deadline for submission of material is the end of the month. We cannotpay for articles, but for every article we publish, the author will receivethat issue of ~=003~The Z-Letter~=001~ free. If the author has a subscription,the subscription will be extended for one issue.
..c
~=002~Letter policy
~=003~The Z-Letter ~=001~reserves the right to edit letters received to conformto standards of taste, decency, and language. We will NOT distort the meaningof any letter; we'll simply not print it first. If you are not willing to haveany letter you send printed, or edited before printing, please say so in theletter. All other letters will be assumed to be for publication and become theproperty of Lambda Software Publishing upon receipt.
..c
~=002~Subscriptions
~=003~The Z-Letter ~=001~is a monthly publication, and subscriptions will beaccepted for 1 or 2 years. A subscription starts with the first issue afterthe subscription payment is received. The cost is $15 per year forsubscriptions mailed to U.S., FPO, or APO addresses. Canadian and Mexicansubscriptions cost $18 per year. Other foreign subscriptions cost $45 peryear. Subscriptions should be paid by check or international money order inU.S. dollars, mailed to Lambda Software Publishing. Back issues cost $2apiece; every back issue is kept in print.
..c
~=002~How to read your mailing label
~=001~If you are a subscriber, your address label lists when your subscriptionexpires, for example, ~=003~Your last issue: 20~=001~. If we have sent you asingle issue in hopes that you will subscribe, it will be marked ~=003~Samplecopy. Complimentary ~=001~copies go to people we expect to spread the word ofthe newsletter's existence, and perhaps contribute information or articles.
..c
~=002~Advertisements~=001~
There is no charge for either business or personal ads. Business ads arecarried as a public service to the community. If you sell a product or providea service to the community, please send us ad copy, either camera-ready or ondisk. If you stop doing business in our community, please let us know so thatwe can drop your ad. Readers who find a product or service unsatisfactory, ordiscover that a vendor has gone out of business, are requested to inform us.
Subscribers may place personal ads at any time. Each ad will be run threetimes automatically. If the ad doesn't achieve its end in that time, it can bereinstated after a lapse of one issue. If the ad succeeds before it has runthree times, please inform us so we can drop it at once.
..c
~=002~Trademarks~=001~
All trademarks used herein are acknowledged to be the property of their owners.
..c
~=002~Index available~=003~
The Z-Letter ~=001~is indexed annually. The index for issues 1-5 appeared inissue 5. The index for issues 6-8 appears soon! Honest!
..k0
..c
~=701~THE STATE OF THE ART~=001~
..k
..c
~=002~New Z-System computer debuts at Trenton~=001~
The 16th annual Trenton Computer Faire was held in April; unfortunately, Icould not attend. The most exciting news I've heard from TCF91 was the~=010~Q~=001~dog and pony show~=010~q~=001~, as he calls it, that Ian Cottrellgave. Ian was showing the YASBEC (~=002~Y~=001~et ~=002~A~=001~nother~=002~S~=001~ingle-~=002~B~=001~oard ~=002~E~=001~ight-Bit~=002~C~=001~omputer), a ~=004~new ~=001~Z-System computer!
According to Lee Bradley, this is a single-board computer like the MicromintSB180. The YASBEC's CPU is the Zilog Z180, which is the same chip as theHitachi HD64180 used in the SB180 (Hitachi and Zilog co-developed the chip). The YASBEC CPU is a 9-MHz Z180, but a 16-MHz Z180 is in the works, and theYASBEC is designed to work at the higher speed.
The YASBEC has 64K to 1M of static RAM, which sounds like it doesn't tie up anaddress line to switch the ROM. Micromint did that with the SB180, whichlimited the onboard memory to 512K. Ian Cottrell, when contacted, was unableto confirm this, as his YASBEC has only 64K on it.
Hal Bower, who obtained the rights to XBIOS when Malcolm Kemp gave them up, issaid to have already developed a banked BIOS for the YASBEC. If that bankedBIOS is based on XBIOS for the SB180, this speed is understandable, but again,I have not yet confirmed this.
The YASBEC also has two serial ports, a Centronics parallel port, a floppy-diskcontroller that will support up to four 5~=010~$~=001~" drives, and a SCSIport, according to Lee Bradley. It comes with a bootable Z-System disk with anunbanked BIOS, ZCPR33, and NovaDOS. If NovaDOS seems an odd choice, recallthat ZCPR33 and NovaDOS are public domain; ZRDOS, ZSDOS, and ZDDOS areproprietary. I do not doubt that other DOSes and command interpreters will beavailable for the YASBEC.
Before you reach for your checkbooks, here is the bad news: YASBEC is not yetavailable in quantity. A controller manufacturer in Canada, whose name I havenot yet permission to publish, made ten of them and sold them to certainindividuals, such as Ian Cottrell. The manufacturer has no interest in gettinginto the personal computer market and is looking for a U.S. firm to manufactureand sell the YASBEC and pay him royalties. I will keep on top of this (I wantone, too!) and let you know what happens.
..c
~=002~FOG changes officers, moves~=001~
Gale Rhoades, for the last almost ten years the backbone of FOG, has resignedher position as Executive Director effective May 31, 1991. Ms. Rhoades willpursue her own career as a computer consultant; she can be reached forconsulting jobs at Gale Rhoades Consulting, P.O. Box 3051, Daly City CA 94015.
FOG's Board of Directors has hired Mike Kaufman as the new Executive Director. As part of the transition, FOG has moved. The new address is P.O. box 1030,Dixon CA 95620. No phone number or street address was yet available in issue247 of ~=003~Foghorn, ~=001~the source of this news.
..c
~=002~LaserScript LX fails the HP test~=001~
Everex, a company well known for its PCs and printers, recently introduced theAbaton LaserScript LX laser printer (Abaton is a company that Everex bought). An ad in the May 7 ~=003~Computer Currents ~=001~by a store called UncleRalph's advertised this printer for $1599, or $85 per month if bought on theinstallment plan. The ad said that the printer ~=010~Q~=001~Automaticallyswitches between Postscript (sic) and HP emulations, and automatically switchesbetween parallel, serial and AppleTalk interfaces. With 2.5 Mb RAM . ..~=010~q~=001~
I bought one and tried it. Had it worked as promised, last issue would havebeen produced on it, instead of the HP LaserJet+ I've been using. As it is, Ihave returned the printer to Uncle Ralph's and gotten my money back.
The advantages of the printer are that it is lighter and smaller than myLaserJet+; its paper tray holds 150 sheets instead of the 100 standard on theolder LaserJet models; and it has a normal plug instead of the specialindustrial plug on the LaserJet+, so it can be plugged into a power strip orpower console. The LaserScript LX has two serial ports, a parallel port, andan Appletalk port. Jobs can be sent to all ports at once, and will be printedin order according to priority settings that the purchaser can set up as hewishes. Any port can default to either the HP emulation or the PostScriptemulation, as determined by the user; if it's in HP emulation and a PostScriptjob is sent, the port switches to PostScript emulation automatically.
Disadvantages are relatively minor, with one exception. The 150-page papertray is better than the old HP standard of 100, but most laser printers have250-sheet trays these days. The printer has HP and PostScript emulations, notreal PCL or real PostScript. The ability to use HP font cartridges is optionaland must be factory installed. The engine that moves the paper is very noisyfor a laser printer (though still quieter than a dot-matrix or daisy-wheelprinter).
However, there is a major bug in the HP emulation, which neither Uncle Ralph'snor Everex could explain. When I downloaded SoftFonts to the printer and usedthem, rather than the fonts built into the HP emulation, to print things, theywould evaporate unpredictably. Sometimes they would last for pages and pages. Sometimes they would go away as soon as the text being printed ejected a pageor switched from regular text to two-column text. Whatever the exact cause,the same software, cable, fonts, and file that printed correctly on theLaserJet+ did not print correctly on the LaserScript LX. As a LaserJet clone,it is a failure.
..c
~=002~Uniform-PC 3.00 Beta release~=001~
Micro Solutions has sent a Beta release of Uniform-PC version 3.00 topurchasers of its CompatiCard IV board. The CompatiCard IV is a floppy-diskcontroller that enables PCs to run up to four 3~=010~@~=001~", 5~=010~$~=001~",or 8" drives in any combination, in single density as well as double densityfor types of disks to which that is a relevant consideration. The new releaseof Uniform-PC specifically upgrades Uniform to take advantage of this newhardware. There will be more on this in a future issue, after I know betterwhat this means to people using PCs to translate between CP/M and Z-Systemformats.
..c
~=002~SVCS May meeting~=001~
A very strange thing happened at the May meeting of the Silicon Valley ComputerSociety. Before the meeting, ballots were passed out for members to fill in. When the actual time came for nominations, it was moved from the floor that theslate of candidates be approved ~=010~Q~=001~by acclamation~=010~q~=001~. Aclear majority raised their hands in favor, and no ballots were collected, orvotes counted. I hope this procedure is legal. It sure was the strangestthing I ever saw. Officers so elected were Mark Gerow, Maureen Hannah, SiriLiddell, Richard Meyers, Bert Stephens, Stuart Stevens, Walter Varner, RichardVerna, and Henry Viveiros.
A presentation by a representative of the Technology Center of Silicon Valley,called ~=010~Q~=001~the Garage~=010~q~=001~, came next. The Garage has beenrepresented as a computer museum. The talk made it clear it is nothing of thesort. Rather, it is a kind of museum of technology in general, with exhibitson the bicycle, the computer chip (the Intel 80486), the Hubble Telescope,materials, robotics, and biotechnology. When the permanent building isfinished it will have meeting rooms, in addition to the store, special hands-onlabs, etc. that is has now; SVCS was offered the use of them for meetings whenthey are completed.
Anyone living in the area who wants to work as a volunteer should contact JulieRose, Manager of Volunteer Services, (408) 279-7175. The Center usesvolunteers as exhibit explainers, special labs assistants, exhibits- andequipment-maintenance assistants, store assistants, and admissions andinformation assistants.
..k0
..c+
~=939~Lambda Software Publishing
~=001~720 South Second Street, San Jose, CA 95112-5820, phone (408) 293-5176
..b5 ld1 1 ll650 100
~=002~Regular products ~=010~- ~=002~quantities not limited
..c-
1. Spellbinder
..b1 c
~=001~Version 5.3H~=002~
..b1 r
$60~=001~
The Rolls Royce of word processors. This includes the software, the User'sGuide which always came with the software, the Technical Manual and MacroManual (which always cost extra), and a new Introduction. All four manualscome a 2" binder in 8~=010~@ ~=001~X 11" format. Both generic and Eagleversions are available. (Ltek)
~=002~2. CP/M
..b1 c
~=001~Version 2.2~=002~
..b1 r
$15~=001~
Bought the hardware, and don't have the operating system? I can sell you thelicense and the manuals, making the copy you get from your user group legal. For many brands of computers, I can even send you the actual operating systemwith the BIOS for your machine. (DRI)
~=002~3. MagicIndex
..b1 c
~=001~Version 3.00~=002~
..b1 r
$100~=001~
Extends even Spellbinder's control of printers, and what it does to WordStarhas to be seen, and then you still won't believe it! Used by us to producethis newsletter. Versions available are: SL (for Spellbinder or other ASCIIword processor plus HP LaserJet or laser with HP emulation), SD (for standardword processors, Diablo 630 and similar daisy-wheel printers), WL (WordStar orWordStar clone plus laser), and WD (WordStar and Diablo). Please specify yourword processor and printer when ordering. (CES)
~=002~4. Various computer manuals
..b1 r
Each $15~=001~
Complete manuals now available for: Eagle CP/M, Eagle 1600, Eagle PC Plus andSpirit, Otrona Attache, and Pied Piper. (Various companies)
~=002~5. Eagle Computer Users Group newsletter ~=001~July 87 toOctober 90~=002~
..b1 r
$15~=001~
All the issues done by the present editor of the only Eagle user group left.(Lambda)
~=002~6. ~=004~The Z-Letter ~=002~(back issues)
..b1 r
$3/issue (US, Canada, Mexico), $5/issue (elsewhere)~=001~
Past issues of our newsletter for the CP/M and Z-System world. (Lambda)
~=002~7. ~=004~The Z-Letter ~=002~(subscription)
..b1 r
$15/year (US), $18/year (Canada & Mexico), $45/year (all other)~=001~
Published monthly. (Lambda)
~=002~8. Z-Fonts catalog
..b1 r
$3 (US, Canada, Mexico), $5 (elsewhere)~=001~
Shows samples of all the fonts available from Lambda for HP LaserJet printers,with instructions on how to choose what size, orientation, etc. you wish.(Lambda)
~=002~9. Z-Fonts
..b1 r
$2 per font plus $2 per disk~=001~
Once you've perused our catalog, you can order the fonts you want very cheaply.(Digi-Fonts)
..n0
..c
~=002~Opportunity products ~=010~- ~=002~limited to quantity in stock
A. ~=004~CBASIC Reference Manual~=002~
..b1 r
$15~=001~
CBASIC comes with CP/M as CBAS2.COM, CRUN2.COM, and XREF.COM. However, themanual for the language was rarely included and is hard to find. Get your copywhile you can. (DRI)
~=002~B. ~=004~The CP/M Handbook with MP/M~=002~
..b1 r
$15~=001~
A good introduction to CP/M by Dr. Rodnay Zaks. It assumes no prior knowledgeof computers. This or another book like it is a must for a novice handed aCP/M computer and told ~=010~Q~=001~You're on your own.~=010~q~=001~ (SYBEX)
~=002~C. Nevada COBOL~=002~
..b1 r
$15~=001~
This is an excellent COBOL which I've used myself for years. It's the only oneI know of that ever sold for less than $700. Packaged for the Commodore 64,but will run on any CP/M computer. (Ellis)
~=002~D. Customizable diskette carriers~=002~
..b1 r
$3~=001~
These sturdy little carriers hold up to three 5~=010~$~=001~" diskettes safefrom harm. Ideal to carry diskettes in a briefcase and protect them from yourlunch, heavy books, etc. Front and back covers are clear pockets that willhold covers of your design, allowing you to customize these diskettes as youwould a binder.
..c
~=002~Disk copying ~=010~- ~=002~$10 per disk~=001~
I can copy most soft-sector double-density 5~=010~$~=001~" CP/M formats,including Northstar and Apple II CP/M. Sorry, no hard-sector formats, nosingle-density formats, no 3~=010~@~=001~" or 8" formats, and no Commodore CP/Mformats yet; some of this will change in the future. Copies can be CP/M toCP/M, CP/M to MS-DOS, or MS-DOS to CP/M; specify the format of the disks yousend, and the format in which you want the copies. Both originals and copieswill be returned.
Please note that this is a service provided to the CP/M and Z-System community. I assume that you are honest, and that you are the legal owner of material youask me to copy. I refuse to accept any responsibility should this turn out notto be the case.
Note also that the price quoted above is for software you purchase elsewhere,or data diskettes you own. ~=002~There is no charge for copying software youbuy from me in the format of your choice! ~=001~Software bought from Lambdawill be sent to you in the disk format you request at no cost but the pricelisted for the software, so don't order Spellbinder and send me extra money fordisk copying.
..LD5 LL662
..c
~=003~Please circle each item desired, and write the quantity desired in themargin next to the listing for the item. For item 6, list which issues youwant. For fonts, use the order form from a copy of the catalogue.~=001~
Name: >4Company:
Address:
City, State, Zip:
Home Phone ( )>3Business Phone ( )
Computer format in which software should be supplied:
Total money enclosed:
..n0
..c+
~=701~WHAT IS S-100 TO ME?
~=002~The CPU and the Bus
by Herbert R. Johnson
Copyright ~=005~q ~=002~1991 Herbert R. Johnson
..c-
..k
~=001~I've noticed a trend in some computing journals where the author beginsan article with some breezy story about their dog, spouse, or the days of theiryouth. I would rather presume the reader wants information over biography.
In the April issue of ~=003~The Z-Letter ~=001~I introduced the S-100 bus assets of signals on a common bus or backplane. In this second article, I'lldiscuss the features and functions of a popular and typical Z80 processor boardfor the (IMSAI/Altair) S-100 bus, namely the ~=002~Cromemco ZPU~=001~ card. You'll learn how clock cycles become instruction cycles and board-to-boardoperation. You'll also learn the differences between the Z80 and the Intel8080, and between I/O operations and memory operations, and how a Z80 refreshesmemory. If interest warrants, I'll continue the series with interrupt andpower-up descriptions. As for biographical comments, I'll only say that thisarticle was harder for me to write than it will be for you to read, I hope.
My approach here is not to give you detailed timing diagrams or schematics. Your board is likely to be different from the ZPU; but it probably operates ina similar way, particularly at the bus interface. Refer to your owndocumentation for further details, or nag me into writing more details, orcontact me or the references at the end of the article for the actualdocumentation. Figures 1 through 3 provide general timing diagrams for Z80/ZPUfunctions, and the cover illustration is a general schematic of the ZPU.
~=002~Definitions, terms, and distinctions~=001~
When I say ~=003~Z80 processor~=001~, I mean signals that come directly fromthe Z80's 40 pins. When I say ~=003~ZPU card~=001~, I mean the logic on theCromemco ZPU. Finally, ~=003~S-100~=001~ means the signals on the 100 buslines. With the editor's indulgence, S-100 signals will be shown in~=002~boldface~=001~, and Z80 signals in ~=004~bold italics~=001~. Again, Iwill not give specific signal timings beyond ~=003~T-states~=001~ (definedshortly), or whether a signal is active ~=003~high~=001~ (logic 1) or~=003~low~=001~ (logic 0). The timing diagrams will show all signals as activehigh; refer to last month's article and your computer's documentation foractual active levels.
The phrase ~=003~T-states~=001~ refers to the fact that all Z80 processoroperations occur during clocked cycles relative to the clock signal that drivesthe Z80 processor. This same clock signal eventually becomes the S-100 bussignals ~=184~F~=002~1~=001~ or ~=184~F~=002~2~=001~ (pronounced~=010~Q~=001~phi-1~=010~q~=001~ and ~=010~Q~=001~phi-2~=010~q~=001~). Thus,each T-state is one clock cycle: for a 2MHz clock, that's 500 nanoseconds (ns). Each time the Z80 executes an instruction, it goes through a cycle of T-stateswhere specific events occur. They are typically enumerated: T1, T2, T3. Events (Z80 signals) can occur early or late within the T-state. I'll describehow these events drive (or are driven by) the S-100 bus.
An important distinction, and a potential source of confusion, is the presenceon the S-100 bus of both ~=002~status~=001~ signals and ~=002~control~=001~signals. Status signals usually start with an ~=002~S (SMEMR, SWO~=001~, etc.)and provide timing for operations like read, write, interrupt, halt. Controlsignals usually start with a ~=002~P (PSYNC, PDBIN, PWR~=001~, etc.) andprovide timing for ~=003~bus events~=001~ like ~=010~Q~=001~data out linesgood~=010~q~=001~ or ~=010~Q~=001~wait state~=010~q~=001~. Some of thesecontrol signals are ~=003~synchronized~=001~, which is my way of saying theyhave particular timing relationships with both the master bus clock signal~=184~F~=002~2~=001~ and the bus timing-control signal ~=002~PSYNC~=001~, whichoccurs at the beginning of each bus operation, like memory read, I/O write,etc.
~=002~WARNING!~=001~ The original S-100 bus is not a minimal bus, I'm afraid,nor are its signals used consistently. Tradition eventually defined mostoperations, and a given manufacturer's use was generally consistent withintheir product line. The revised S-100 bus, the IEEE-696, cleans up theconfusion of the older bus, and adds more features as well.
..k0
. Page 9 this issue is Figure 1 of this article, and the Eight Bits andChange! ad.
..n0
..k
~=002~Memory reads and writes (Figure 1)~=001~
The Z80 processor uses ~=004~MREQ~=001~ to signal a memory operation like reador write, combined with ~=004~RD~=001~ for read and ~=004~WR~=001~ for write. The ZPU card combines ~=004~MREQ~=001~ and ~=004~RD~=001~ to produce the S-100status signal ~=002~SMEMR~=001~, and ~=004~MREQ~=001~ and ~=004~WR~=001~ forstatus signal ~=002~SWO~=001~. In addition, the ZPU combines a synchronizedversion of ~=004~WR~=001~, the bus signal ~=002~PWR, ~=001~with another bussignal for I/O writes, ~=002~SOUT~=001~, to create ~=002~MWRT ~=001~as a writebut not I/O output signal for memory writes. Meanwhile, ~=002~SMEMR~=001~ isused for memory reads.
To read a byte from memory, the Z80 enters T-state T1, activates the addresslines ~=004~A0~=001~ through ~=004~A15~=001~, and signals ~=004~MREQ~=001~ and~=004~RD~=001~, which become ~=002~A0~=001~ through ~=002~A15~=001~ and~=002~SMEMR~=001~ on the bus. The memory card to be read has one T-state, T2,to prepare its data to be read on bus lines ~=002~DI0~=001~ through~=002~DI7~=001~. At state T3, the Z80 processor reads the corresponding lines~=004~D0~=001~ through ~=004~D7~=001~ with ~=002~SMEMR ~=001~and thendeactivates ~=004~MREQ, RD,~=001~ and the address lines (~=002~SMEMR~=001~ and~=002~A0-A15~=001~ on the bus). At the end of T3 all signals and lines becomeinactive.
To write a byte to memory, the Z80 enters T-state T1, activates the addresslines ~=004~A0~=001~ through ~=004~A15~=001~ and, slightly later, the Z80 datalines ~=004~D0~=001~ through ~=004~D7~=001~ with output data. These become~=002~A0 ~=001~through ~=002~A15~=001~, and ~=002~DO0~=001~ through~=002~DO7~=001~ respectively. However, the ZPU does not activate the bus datalines until state T2, after ~=002~PSYNC ~=001~is inactive. Later in state T2~=004~WR~=001~ becomes active and then bus signal ~=002~MWRT~=001~ becomesactive. During state T3, the memory card to be written to senses the~=002~MWRT~=001~ signal and reads the address and output data lines. At theend of T3 all signals and lines become inactive.
Actually, memory operations can be a little more complicated than this. I didnot describe the operation occurring on the data bus lines in detail, nor theuse of additional control signals for timing read and write operations. Nonetheless, many memory boards use only the signals described. For a furtherdescription of bus and ZPU data timing, read the section on I/O operations.
~=002~Instruction fetch and refresh (Figure 2)~=001~
The Z80 and the S-100 bus follow a similar sequence for the ~=003~instructionfetch~=001~ operation of reading an instruction byte from memory. However, theprocessor signal ~=004~RD~=001~ (bus signal ~=002~SMEMR~=001~) becomes inactiveat the beginning of state T3, at which time the data (instruction) is read fromthe bus data lines into the processor. Note that an instruction fetch frommemory occurs in 2 T-states; while a memory data fetch occurs in 3 T-states. The Z80 reads instructions faster than it reads data!
~=004~MREQ~=001~ becomes inactive briefly during T3, then is active again in T3and T4 with the processor signal ~=004~RFSH~=001~ (bus signal~=002~RFSH~=001~). Since neither ~=004~RD~=001~ nor ~=004~WR~=001~ arereactivated, the bus does not see this second action of ~=004~MREQ~=001~. Meanwhile, processor address lines ~=004~A0~=001~ through ~=004~A6~=001~ (andalso mirrored by the ZPU onto ~=004~A7~=001~ through ~=004~A14~=001~, asdescribed later) contain the contents of the Z80 refresh counter/register,which is incremented with each instruction fetch.
Why all this fuss? So that a bus device that examines the ~=002~RFSH~=001~signal can use these address lines to refresh its dynamic RAMs with a readoperation while the processor is processing the instruction just fetched. Modern memory designs generally do this refresh with special circuitry or insoftware (Guess what the IBM PC does!). Dynamic RAM boards on the S-100 buswere often flaky in the old days, which made static RAM boards popular despitetheir additional expense.
~=002~I/O reads and writes (Figure 3)
~=001~The Z80 processor uses ~=004~IORQ~=001~ to indicate an I/O operation. Combined with ~=004~RD~=001~, the ZPU creates the bus signal ~=002~SINP~=001~;combined with ~=004~WR~=001~, it creates ~=002~SOUT. ~=001~While the timing ofthese signals from the Z80 is sufficient to perform the I/O operations on theaddress and status lines, the data-line timing of the S-100 bus requires theadditional use of ~=002~PDBIN ~=001~and ~=002~PWR~=001~ respectively for databus reads and writes (but your I/O boards may not!). ~=002~PDBIN~=001~ is theresult of a synchronized ~=004~RD~=001~ processor signal; while ~=002~PWR~=001~is a similarly synchronized ~=004~WR~=001~ signal.
..k0
. Page 11 this issue is Figures 2 & 3 of this article.
..n0
..k
Not only are these data bus control signals important during I/O reads andwrites; they actually arbitrate traffic to the Z80 data lines for~=002~all~=001~ data reads and writes. While the S-100 bus has separate linesfor data in or data out, the Z80 has 8 bidirectional data lines. ~=002~PDBIN~=001~ is used to route incoming bus data to the Z80, while~=002~PSYNC~=001~ is used to route outgoing Z80 data to the bus.
To address an I/O location for either read (input) or write (output), the Z80enters T-state T1 and activates the address lines ~=004~A0~=001~ through~=004~A7~=001~; but not ~=004~A8~=001~ through ~=004~A15~=001~. Why? BecauseIntel's 8080 only defined 256 I/O addresses, which is 8 bits, and placed theappropriate value on the first 8 processor address lines. However, it mirroredor duplicated their contents on the next 8 processor address lines. (Remember,the S-100 bus was defined by the original 8080 processor's features!) The ZPUcard anticipates this by (optionally) using ~=004~IORQ~=001~ to read the loweraddress lines and write them to the upper address lines, because the Z80 doesnot mirror its I/O addresses. Therefore, when ~=004~IORQ~=001~ is available atthe beginning of state T2, the S-100 bus lines ~=002~A0~=001~ through ~=002~A15~=001~contain an appropriate address. As suggested earlier, this same mirroroccurs for the refresh cycle, when ~=004~RFSH~=001~ also provides the low byteof the processor address lines to the high byte of the bus address lines.
To read a byte from an I/O address, the Z80 begins state T1 with addressinformation on line ~=004~A0 ~=001~through ~=004~A7~=001~. Early in state T2,the bus signal ~=002~SINP ~=001~becomes active and should be sensed by the I/Ocard on the bus. By processor state T2 the Z80 and ZPU activate S-100 busaddress lines ~=002~A0~=001~ through ~=002~A15~=001~ as described above. During state T3, the bus signal ~=002~PDBIN~=001~ becomes active; the I/O cardshould now be prepared to put its data onto the bus data lines ~=002~DI0~=001~through ~=002~DI7~=001~, and to leave it there until ~=002~PDBIN~=001~ becomesinactive at the end of state T3. ~=002~PDBIN~=001~ is also used on the ZPU toroute the data from the input data bus to Z80 processor lines ~=004~D0~=001~through ~=004~D7~=001~.
To write a byte to an I/O address, the Z80 begins state T1 with address anddata information on lines ~=004~A0~=001~ through ~=004~A7~=001~ and~=004~D0~=001~ through ~=004~D7~=001~. By processor state T2 the Z80 and ZPUactivate S-100 bus address lines ~=002~A0~=001~ through ~=002~A15~=001~ and busdata lines ~=002~DO0~=001~ through ~=002~DO7~=001~. The bus signals~=002~SOUT ~=001~and ~=002~PWR ~=001~are also active and should be sensed bythe I/O card on the bus. During state T3, the bus signal ~=002~PWR~=001~becomes inactive and the I/O should then read data from the bus data lines. ~=002~SOUT~=001~ becomes inactive at the end of state T3~=002~,~=001~ as do theaddress and data out lines.
~=002~Conclusion~=001~
Whew! After all this, I can appreciate the simplicity of single-boardcomputers! The cost of a flexible bus is that it is more complicated than adedicated interconnection scheme. However, the S-100 design stands as thefirst major computer hobby bus, with a decade of use by many vendors with manyflavors of processors, memory and I/O cards. Its successor, the IEEE-696design established in 1983, is still in use today with 80x86 and 680x0 CPUs. Meanwhile, these old systems keep working and people keep using, buying, andrepairing them. I'll continue this series next month with a description ofinterrupts and power-up ~=010~Q~=001~bootstrap~=010~q~=001~ operations.
~=002~References
~=003~The S-100 Bus Handbook~=001~ by Dave Bursky, Hayden Book Co., 1980.
~=003~The Z-80 Microcomputer Handbook~=001~ by William Barden, Jr., Howard WSams, 1978. Or, any other hardware reference to the Z80 which includes timingdiagrams. You can obtain documentation either from the library, from afriendly engineer or technician, or via a manufacturer or vendor. The lattertwo sources get reference books free, and should be able to pass them on at nocharge.
~=003~Standard Specification for S-100 Bus Interface Devices~=001~; a reprintfrom ~=004~IEEE Computer Magazine, ~=001~July 1979. This describes the newerIEEE-696 bus, but it is a good reference for looking back to the original S-100bus. I don't know the cost.
~=003~ANSI/IEEE Standard 696-1983~=001~; both the American National StandardsInstitute and the IEEE offer this final version of the IEEE-696 standard. Itwill cost about $30.
~=003~Cromemco ZPU Instruction Manual~=001~, April 1979; Cromemco/DynatechComputer Systems, Mountain View CA 94039, (415) 964-7400 (I think). They maybe puzzled by a request for a 13-year old manual; contact me for details.
Check your local bookstore or library for information on contacting thesepublishers.
~=001~We publish a catalog that lists the titles of 720 CP/M library files fromwhich you can pick and choose. The titles are current up to 1990. The cataloglists each title, author, date, size of library, and a description. We chargeyou a copying fee of only five cents per 1K of library file copied. We canformat for over 180 5~=010~$~=001~" disk formats, both 48- and 96-tpi, and wecharge you no extra for your format. We offer discounts for large orders ifyour disk format holds over 300K. You receive your selections plus our catalogon disk and a library utility to remove the files.
We also offer a data-copying service to copy data between any of the formats wesupport. Full details included with the catalog.
As a special introduction to the public domain of CP/M, we have put together aSampler of some of the best utilities and word processing programs. This largecollection is available on your disk format for $10.00 plus $4.00 shipping andhandling. We throw in the printed catalog for $1.00 more ($15.00 total). Ifyou just want the printed catalog and other info, send $2.00.
..c
SOUND POTENTIALS, BOX 46, BRACKNEY PA 18812
. The rest of page 13 this issue is the Herb Johnson ad.
..n0
..c+
~=701~SCRIPT OF THE MONTH CLUB
~=002~An alias is just another name
by Jay Sage~=001~
..c-
..k
~=001~You should not get the idea that aliases always do something fancy orcomplex. I have lots of ARUNZ aliases that just give me alternative names forcommands. This month I am going to share some examples.
In the days before ARUNZ, each alias took up a full block on a disk, typically1K on low-capacity floppies, 2K on high-capacity floppies, and 4K or even 8K ona hard disk. One was much more reluctant to create dozens of aliases just tomake typing easier. With ARUNZ, the disk space required for each additionalalias is generally negligible, and you can indulge yourself. That's one of thethings the Z-System is for!
Now that I use an MS-DOS machine at work, I have gotten used to certain MS-DOSvariants of common commands. On my MS-DOS machine, I run PCED, theProfessional Command-line EDitor, which has an alias facility with much of thepower of ARUNZ (see my recent article in ~=003~The Computer Journal). ~=001~Ihave aliases on the MS-DOS machine to allow me to use the names of the CP/Mcommands, but it is still handy to be able to use all the alternatives. Hereare two.
>0DEL >1 era $*
>0CHKDSK >1 b0: chkdir $*
The first one is an alias for a resident command in my RCP. The second invokesGene Pizzetta's lovely CHKDIR program, which scrutinizes a disk's directory forall sorts of problems (of course, unlike the MS-DOS CHKDSK, which very oftenfinds lost clusters, CHKDIR rarely finds any real defects in the much morerobust CP/M file system).
I have a whole bunch of aliases to help me with programs whose names I havechanged for any of a number of reasons. Sometimes new programs appear withfunctions similar or identical to older programs whose names I am accustomedto. For example, Hal Bower's MYLOAD is a Z-System improvement on Ron Fowler'soriginal MLOAD. I still use the old name.
>0MLOAD >1 asm: myload $*
In some cases, I rename the new program to the old familiar name. I renamedthe ZDOS COPY command to the name of Richard Conn's original MCOPY, on which itwas based. I also got into the habit of renaming the superior LBREXT to LGET. Just in case I try running these programs under their real names, I havealiases to cover me:
>0COPY >1 b0: mcopy $*
>0LBREXT >1 b0: lget $*
Sometimes I habitually get confused as to what the correct name is. Forexample, archive files under CP/M traditionally have the extension ARK todistinguish them from MS-DOS ARC files. (The file structures are the same; thedifferent extensions are used only to distinguish the contents.) So, what isthe name of Bob Freed's utility for extracting members: UNARK or UNARC? Well,with an alias, either can be used:
>0UNARK >1 b0: unarc $*
I regularly use the awesome Dynamic Screen Debugger (now only $50 instead ofthe original $130, by the way). The version for Zilog mnemonics was calledDSDZ. When I got to the point where I never used Intel mnemonics any longerand brought up a new release of the program, I called it DSD instead. Now Ican never remember which name to use. With an alias, I don't have to worryabout it; either DSD or DSDZ will work:
>0DSD,Z >1 asm: dsd $*
Often, I just want to save typing, but I don't like renaming the actual COMfiles to short, cryptic, UNIX-like names. When I display the directory of thedisk, I like to be able to recognize what the programs are for, so I limit thecryptic abbreviations to alias scripts. Here are two:
>0CFG >1 b0: zcnfg $*
>0ZP,ATCH >1 b0: zpatch $*
For some reason, I find ZCNFG (the name of Al Hawley's generalized programconfiguration utility) very hard to type. CFG is the file type of theconfiguration files used by ZCNFG, so that was a natural abbreviation. WithZPATCH, Steve Cohen's disk-file patcher, I usually enter just ZP.
I didn't want to have only trivial aliases (however useful they might be) inthis month's column, so I am going to end with one that does a little more. Ona typical, heavily aliased Z-System, doing ~=002~DIR *.COM ~=001~shows you veryfew of the commands that are actually available. Greg Miner wrote a lovelylittle utility called ADIR, which shows the names of alias commands defined inan ALIAS.CMD file. Unfortunately, from my point of view, it does not use thesame kind of syntax that normal directory display programs do. Here is thesyntax shown in its built-in usage message:
>0ADIR [[dir:[][[filename.typ[] [[=mask[] [[/o[]
Notice that the mask for restricting the class of names to be shown must bepreceded by an equal sign. A filespec entered directly is taken as the name ofthe alias definition file to be examined.
I replaced ADIR by an alias as follows:
>0ADIR >1b0: adir =$*
This would simply stick an equal sign in front of anything the user entered. Thus
>0ADIR A*
would be turned into
>0ADIR =A*
which displays all aliases whose names start with A. (Actually, the asteriskis not needed, because ADIR automatically adds one.)
This alias will fail, however, if one tries to get the built-in help screen inthe standard way for Z-System programs by entering
>0ADIR //
I actually use the more complicated form below to allow for this case.
>0ADIR >1 if eq $1 //;
>1 b0: adir //;
>1 else;
>1 b0: adir =$*;
>1 fi
I hope this month's column has given you some good ideas and that by next monthyou will all have added several dozen simple, convenient aliases to yourALIAS.CMD files.
..k0
..c+
~=701~A PROGRAMMER CORNERED
~=002~Two programs are sometimes better than one
..c-
..k
The customer file to which I added a key last issue was based on the subscriberdata base I got from Joe Wright when I assumed full responsibility for~=003~The Z-Letter. ~=001~Joe had set it up in dBase II with a separate fieldfor first name, last name, company, street address, city, state, zip, country,phone, and date. I transferred the data to a SELECTOR V data base withoutchange. The way Joe had set it up allowed a record to be sorted by any ofthese categories, since each had its own field. To sort by zip code, forinstance, all I would have to do is change the definition of zip code to a keyfield, and then run the SELECTOR module to generate the keys.
In practice, however, I have only used this information to generate the mailinglabels for ~=003~The Z-Letter. ~=001~This application requires no keys, thoughit is useful if the labels are sorted first by country (since foreign postageis more expensive), and then by last name and first name (which we accomplishedby the addition of a key based on the last name and first name, last issue). Collapsing fields that don't need to remain separate reduces the space used upby the data, just as combining files in a library file reduces the space usedup by all the files.
Resolving to do so is one thing, doing it another. I wanted to combine thefirst name and last name fields, so that two fields became a simple name field;and combine city, state, and zip fields into one field, also. The questionwas, how to do this?
No one tool seemed well suited. Pascal or COBOL could have done it, bycounting the characters actually used in each field and concatenating the datawith a space in between, but it would have been fairly clunky. Pascal, whichhandles strings readily, is not really good at going through a file one recordat a time, making a new record, and writing it to a new file. COBOL, which isvery well suited for exactly that, handles variable-length strings only withdifficulty. TACL, a macro language used at Tandem, can do both easily, but Iwanted a solution that would run on a CP/M machine and serve as an example forthis column. TACL runs only on Tandem minis and mainframes using the Guardianoperating system, so that was out.
SELECTOR's formatted-report writer seemed ideal, except that it writes only toa printer, not to a file. This is not an insuperable problem; the ability tointercept terminal and printer data and put it into a file, using Joe Wright'sRECORD IOP, is what got me interested in the Z-System in the first place. Unfortunately, when I tried it, I found that strings concatenated by the reportwriter do not have a space between them. After trying several ways to forcethe introduction of a space, I gave up on that means.
Eventually it occurred to me that two different methods could be combined toaccomplish what was difficult for either to do on its own. I converted thecustomer file by using Nevada COBOL to concatenate the fields with notruncation, then used a Spellbinder macro to reduce the spaces between theconcatenated fields to a single space. Here is the COBOL program for the firsthalf of this procedure:
..k0
0010 IDENTIFICATION DIVISION.
0020*
0030 PROGRAM-ID.
0040 MAKECUST.
0050*
0051 AUTHOR.
0052 DAVID ANTHONY JOSEPH MCGLONE.
0053*
0054 DATE-WRITTEN.
0055 30 MAY 1991.
0056*
0057 DATE-COMPILED.
0058 30 MAY 1991.
0059*
0060* This program converts the SELECTOR data file
0070* ZLTRCUST.DAT to a new file NEWCUST.DAT. The
0080* new data file has the same structure as the
0090* old, except that the FIRSTNAME and LASTNAME
0100* fields of the old file have been concatenated,
0110* and the CITY, STATE, and ZIP fields also.
0310*
0330 ENVIRONMENT DIVISION.
. Pages 17 & 18 this issue are the Davidge ad.
..n0
..n0
0340*
0350 CONFIGURATION SECTION.
0360*
0370 SOURCE-COMPUTER.
0380 8080-CPU.
0390 OBJECT-COMPUTER.
0400 8080-CPU.
0410*
0420 INPUT-OUTPUT SECTION.
0430*
0440 FILE-CONTROL.
0450*
0460 SELECT INPUT-FILE ASSIGN TO DISK
0470 ORGANIZATION >3IS SEQUENTIAL
0480 ACCESS MODE >3IS SEQUENTIAL
0490 RECORD DELIMITER >3IS STANDARD.
0500*
0560 SELECT OUTPUT-FILE ASSIGN TO DISK
0570 ORGANIZATION >3IS SEQUENTIAL
0580 ACCESS MODE >3IS SEQUENTIAL
0590 RECORD DELIMITER >3IS STANDARD.
0600*
0610*
0620 DATA DIVISION.
0630*
0640 FILE SECTION.
0650*
0660 FD INPUT-FILE
0670 LABEL RECORDS ARE STANDARD
0680 VALUE OF FILE-ID IS "A:ZLTRCUST.DAT".
0690 01 INPUT-RECORD.
0700 05 IR-CUSTID >4PIC X(14).
0710 05 IR-FIRSTNAME >4PIC X(20).
0720 05 IR-LASTNAME >4PIC X(20).
0730 05 IR-COMPANY >4PIC X(40).
0740 05 IR-STREET >4PIC X(40).
0750 05 IR-CITY >4PIC X(30).
0760 05 IR-STATE >4PIC X(20).
0770 05 IR-ZIP >4PIC X(10).
0780 05 IR-COUNTRY >4PIC X(20).
0790 05 IR-PHONE >4PIC X(20).
0800 05 IR-DATE >4PIC X(08).
0900*
0910 FD OUTPUT-FILE
0920 LABEL RECORDS ARE STANDARD
0930 VALUE OF FILE-ID IS "A:NEWCUST.DAT".
0940 01 OUTPUT-RECORD >4PIC X(64).
1130*
1140 WORKING-STORAGE SECTION.
1150*
1160 01 WS-MORE-INPUT >4PIC X(03) >5VALUE SPACES.
1170*
1180 01 WORK-RECORD >4PIC X(64).
1190*
1200 01 WORK-NAME.
1210 05 WN-FIRSTNAME >4PIC X(20).
1215 05 FILLER >4PIC X(02) >5VALUE " $".
1220 05 WN-LASTNAME >4PIC X(20).
1230*
1240 01 WORK-CITY-STATE-ZIP.
1250 05 WC-CITY >4PIC X(30).
1255 05 FILLER >4PIC X(02) >5VALUE " $".
1260 05 WC-STATE >4PIC X(20).
1265 05 FILLER >4PIC X(02) >5VALUE " $".
1270 05 WC-ZIP >4PIC X(10).
3210*
3220*
3230 PROCEDURE DIVISION.
3240*
3250 0100-MAINLINE.
3255 OPEN INPUT INPUT-FILE.
3265 OPEN OUTPUT OUTPUT-FILE.
3270 READ INPUT-FILE
3271 AT END MOVE HIGH-VALUES TO WS-MORE-INPUT.
3280 PERFORM 0200-CONVERT-INPUT-FILE
3281 UNTIL WS-MORE-INPUT IS EQUAL TO HIGH-VALUES.
3340 CLOSE INPUT-FILE.
3350 CLOSE OUTPUT-FILE.
3360 STOP RUN.
3370*
3380 0200-CONVERT-INPUT-FILE.
3700 MOVE IR-CUSTID >3 TO OUTPUT-RECORD.
3701 WRITE OUTPUT-RECORD.
3702*
3710 MOVE IR-FIRSTNAME >3 TO WN-FIRSTNAME.
3720 MOVE IR-LASTNAME >3 TO WN-LASTNAME.
3723 MOVE WORK-NAME >3 TO OUTPUT-RECORD.
3724 WRITE OUTPUT-RECORD.
3725*
3730 MOVE IR-COMPANY >3 TO OUTPUT-RECORD.
3731 WRITE OUTPUT-RECORD.
3740 MOVE IR-STREET >3 TO OUTPUT-RECORD.
3741 WRITE OUTPUT-RECORD.
3742*
3750 MOVE IR-CITY >3 TO WC-CITY.
3760 MOVE IR-STATE >3 TO WC-STATE.
3770 MOVE IR-ZIP >3 TO WC-ZIP.
3773 MOVE WORK-CITY-STATE-ZIP >3 TO OUTPUT-RECORD.
3774 WRITE OUTPUT-RECORD.
3775*
3780 MOVE IR-COUNTRY >3 TO OUTPUT-RECORD.
3781 WRITE OUTPUT-RECORD.
3790 MOVE IR-PHONE >3 TO OUTPUT-RECORD.
3791 WRITE OUTPUT-RECORD.
3800 MOVE IR-DATE >3 TO OUTPUT-RECORD.
3801 WRITE OUTPUT-RECORD.
3802*
3900 READ INPUT-FILE
3910 AT END MOVE HIGH-VALUES TO WS-MORE-INPUT.
9997*
9998 END PROGRAM MAKECUST.
..k
Like the program in last month's column, this one is very simple. Most fieldsare copied directly to OUTPUT-RECORD, and then OUTPUT-RECORD is written to theoutput file. This gives us a Spellbinder list where each field is on adifferent line. The FIRSTNAME and LASTNAME fields of the input records arecopied to fields of a working-storage variable called WORK-NAME, which has afiller between them, composed of a space followed by a dollar sign. This putsthe data on a single line (that is, in a single field), in the right order,separated by at least one space and a dollar sign. WORK-NAME is then writtento the output file. CITY, STATE, and ZIP are concatenated the same way.
Once COBOL has concatenated the data and written the output to a Spellbinderlist, we can use a Spellbinder macro to chop the extra spaces between first andlast name, and between city, state, and zip, down to a single space. Thelargest possible such string of extra spaces occurs between city and state. Inthe original file, CITY is 30 characters. If the name of the city in aparticular record is only one character long, there will be 30 spaces and adollar sign between CITY and STATE in that record. A rather simple-mindedmacro can search for 30 spaces and a dollar sign and reduce them to a singlespace, then search for 29 spaces and a dollar sign and reduce them to a singlespace, etc. It's moronic, but quick, and we only need to do this once.
Here are the last 8 lines of the macro I used. To show the spaces moreclearly, I have here represented them by ~=005~0~=001~. ~=005~f ~=001~standsfor a carriage return in a Spellbinder search command; one of the powerfulfeatures of Spellbinder is that it can search for carriage returns, andunspecified numbers, as well as ordinary ASCII characters.
..i5
t
sa/~=005~000~=001~$/~=005~0~=001~$/
t
sa/~=005~00~=001~$/~=005~0~=001~$/
t
sa/~=005~0~=001~$/~=005~0~=001~/
t
sa/~=005~0f~=001~/~=005~f~=001~/
..i0
Once all the extra spaces are gone, the new file serves as the data for a newSELECTOR V data base. SELECTOR can import data from files whose records endwith a given character, or (like dBase II) are surrounded by quotation marksand separated by commas.
Next issue I will describe the actual structure of the data base, show howSELECTOR V manages it, and present a program to generate mailing labels fromthe data base.
..k0
..c
~=701~LETTERS~=001~
..k
..r
May 26, 1990
Dear David:
I have been planning to write to you for months, but as I am the world'sgreatest procrastinator I am just now getting around to it. First I'd like totell you how much I am enjoying ~=003~The Z-Letter. ~=001~I devour each issueas soon as I receive it. The news, articles and ads are all great.
Next, I'd like to thank you for your editorial ~=010~Q~=001~What the WorldNeeds Now~=010~q~=001~ in issue #7. You stimulated me to define myself inrelation to computers. I am not a hacker, though perhaps I hack some. I'm notso much a user, though I do
..k0
. Pages 22 & 23 this issue are the Socrates ad.
..n0
..n0
..k
use some. And I'm not a programmer, though I do sometimes try a bit ofassembly, especially in trying to install or modify programs to fit myhardware. When I read your editorial, I thought to myself, ~=010~Q~=001~Aha,that's me. I am a Collector.~=010~q~=001~ On further reflection, although Icollect CP/M computers and stuff, Hoarder probably is a more accurate label.
I've been fussing with computers since since late 1981. Perhaps you or yourreaders have some interest in ~=010~Q~=001~where I've been~=010~q~=001~. Though my wife claims I have spent a fortune on my stuff I counter with~=010~Q~=001~I got a great deal on a discount!~=010~q~=001~ and ~=010~Q~=001~Igot it for next to nothing at Zero G, or at Wacky Willie's.~=010~q~=001~ Mywife says that's a lie.
Zero G is my favorite electronics store in Corvallis, Oregon. Chuck, theowner, collects lots of good salvage as well as having cable and connectors andstuff. Wacky Willie's is a fabulous salvage store in Portland, actually twostores. I have found bargains in disk drives, cabinets, terminals, keyboardsand all manner of other things there.
Following is a more or less chronological account of my acquisitions over theyears since my first purchase in 1982.
~=002~Computers~=001~
Actually I have 5 CP/M machines here at home. All are working and all haveZCPR v3.4, mostly with ZDDOS. My first computer is a California ComputerSystems S-100 machine. It weighs 170 pounds and has dual 8" drives. RecentlyI found a SemiDisk 1-meg RAM disk, which greatly speeds up the action. I use aWyse 60 terminal but also have a Falco TS-1 and a Televideo 970.
My Kaypro II (serial # 9838) was acquired in the fall of 1982. It is myfavorite machine, and is much modified. A Micro Cornucopia Pro-8 ROM isinstalled, clock modified to 5 MHz, Kenmore Z-Time clock, modification for DSDD5~=010~$~=001~" disks, DSQD 5~=010~$~=001~" disks, and 8" disks. So it willread and write Kaypro II, 4 and 8 disks, and IBM 3740 8" disks. There is alsoa Microsphere 1-meg RAM drive. The RAM drive, one TEAC SSDD drive, and twoTEAC quad-density drives are all mounted in the box. There is also aMicrosphere composite video output which I don't use. Of course I haveinstalled a hefty power supply, and a battery and charger which keeps the RAMdisk for up to 5 hours in case of power failure or if I want to move themachine.
The latest addition is a Corvatek KEY-UP interface which allows me to use anyserial keyboard (AT or XT type). This is great. Currently an Omnikey Ultrakeyboard (Northgate Computer Systems) is installed. The keyboard is veryversatile and even converts to Dvorak as well as QWERTY key layout. The KEY-UPinterface is also extemely versatile. It allows all keys on the keyboard to beprogrammed at will. So keys can be reassigned, or macros can be defined. Thisworks much better than a software key changer because it doesn't use upcomputer memory. ~=003~[[See the Corvatek ad elsewhere in this issue for moreinformation. DAJM[]~=001~
In 1985 Southern Pacific Limited, a Japanese concern, marketed Z-80 and HD64180 single-board computers. I assembled their LAT-1, an HD 64180 machineusing CP/M 3.0. It includes a built-in 384K RAM drive, 6.1 MHz clock, serialand parallel I/O, and other features more sophisticated than I am. All this ishoused in an Integrand case with one SSDD 5~=010~$~=001~" drive, two 1.2-meg HD5~=010~$~=001~" drives, and a 20-meg hard disk. The BIOS is written to readand write almost any 3~=010~@~=001~", 5~=010~$~=001~", or 8" drive. This isrunning Z3PLUS.
The next acquisition was a Bondwell 2. That's a portable Z-80 machine with LCDscreen and one SSQD 3~=010~@~=001~" drive, and a 512K RAM disk. It has aKenmore Z-Time clock but no other modification. It also is running ZCPR 3.4and ZDDOS.
Last summer I acquired a couple of Kaypro II mother boards. After finding andreplacing a bad chip or two on the boards, I installed each in an Ampex monitorwith a single 5~=010~$~=001~" quad-density drive. Also, the boards wereupgraded with Micro Cornucopia ROMs and the 256K memory upgrade which produceda 191K RAM drive. So my daughter and wife each has their own word-processingcomputer.
Along the way I assembled an Ampro Little Board Plus. It is in a smallIntergrand case with two 5~=010~$~=001~" quad drives. My wife uses it in her(physicians) office for word processing.
~=002~Printers~=001~
First came an Okidata 83, which is built like a tank. It is still in operationat my daughter's house. It is modified with a Rainbow ROM which makes it likean Okidata 93. Next, I acquired an IDS Prism 132. That was used in my officefor several years for word processing. Neither of these has ever requiredmaintenance except for occasional cleaning and ribbon change. My son has theMannessman Talley Spirit printer. It works fairly well but it doesn't appearas stout as the Okidata or Prism.
Most have probably never heard of Epson's HS-80 Letterjet. It is a small(3"x5"x14") very portable, battery operated, inkjet printer I found once onsale. Print quality is only fair, it's slow, and it can only use single sheetpaper.
Last year a Hewlett-Packard Deskjet 500 joined the fold. Now there is aprinter! It is fast, very quiet, and has outstanding print quality. It is byfar my favorite for quality printing.
I have recently adopted a Panasonic KX-P1124 24-pin dot-matrix printer. If Icould have only one printer, that would be it. Although its print quality isnot quite as good as the H-P, and it's noisier, it is very easy to use, printquality is very good, and it's very versatile, with many fonts and pitchesavailable from the control panel on the front. Also, it costs less than halfwhat the Deskjet cost.
~=002~Miscellaneous~=001~
Other hardware includes modems, keyboards, drives, isolation transformers,printed circuit boards (including some S-100 stuff) and lots of assorted parts. I hope I don't have to move soon.
~=002~Documentation~=001~
Most books published about CP/M are in my library, including (I think) all ofCortesi's, Barbier's, and Miller's books, and many on CP/M assembly-languageprogramming.
Journals in my library include: ~=003~Computer Smyth ~=001~(complete),~=003~CP/M Review ~=001~(complete), ~=003~Dr. Dobb's Journal ~=001~(until theyabandoned CP/M), ~=003~K~=323~m~=003~gram ~=001~(complete), ~=003~Lifelines~=001~(many), ~=003~Microsystems ~=001~(1983-), ~=003~Micro/Systems Journal~=001~(all), ~=003~Micro Cornucopia ~=001~(all), ~=003~Profiles ~=001~(all),~=003~S-100 ~=001~(all), ~=003~Supermicro ~=001~(all), and ~=003~User's Guide~=001~(all). I don't wish to part with any of them but would be willing togive information out of them.
~=002~Software~=001~
Too numerous to mention. This is being typed on the LAT-1 using ZDE v1.3. Thanks to Eric Meyer and Carson Wilson. The address label and envelope arebeing typed on the Panasonic KX-P1124 using ZDB13, thanks to Joe Mortensen.
..c+
Yours Sincerely,
A. A. Straumfjord
31618 Bryant Way
Albany OR 97321
..c-
~=003~Thanks for sharing all that information with us, Al. Maybe it just seemsinteresting to me because I'm a collector, too. I contacted Corvatek and foundthey still have some of the KEY-UP interfaces; an ad for them appears elsewherein this issue. Personally I wouldn't want to use a PC-style keyboard, as Idislike trying to type on them, but anything that expands our options is worthknowing. Certainly it's easier to get a Keytronics keyboard than a replacementkeyboard for many old CP/M computers.
Thanks also for sending your letter on a disk, so I didn't have to retype itfor publication. I always appreciate that.~=001~
..r
June 2, 1991
Dear Dave,
Sorry to be such a bother . . . however, I am so fascinated with Spellbinderthat I've spent the
..k0
. Page 26 this issue is the Corvatek ad.
..n0
..k
better part of the last month (whenever I had some time) installing my Wyse 60terminal and my Epson LX-80 printer.
I could have installed the MX-80 from the listing in the CONFIGSB program. However, I find it quite useful to renew my knowledge of my printer by goingthrough the tedious exercises of installing it directly. This is quite arewarding adventure; I recall characteristics of the printer I had forgottenabout, and discover some I had not been aware of.
Thus far, the printer installation seems to be working quite well. There are afew little things I need to work on, like making sure, for example, that thecurrently used font is turned off and the printer returned to initial statewhen changing fonts. These are minor irritants which can be solved in numerousways; e.g., by turning the printer on and off when a different font is to beused. ~=003~[[Or by including the printer-reset code in the definition of theinline code which tells the printer to change fonts. DAJM[]~=001~
The one problem I am struggling with at the moment is getting the terminal toshow the enhanced material in black letters against a dim background. (Isuppose you call this ~=010~Q~=001~half intensity~=010~q~=001~; the Wyse manualcalls it ~=010~Q~=001~dim display attribute~=010~q~=001~.) What I am gettingon the screen is a series of slashes which completely replace the enhancedmaterial. However, when the text is displayed using the Spellbinder VIEWcommand, the enhanced material is displayed exactly as I coded the variousSPECIAL CHARACTERs in the Y table. For example, I have coded~=010~Q~=001~emphasized print~=010~q~=001~ to be represented in VIEW by acombination of the Wyse's DIM and REVERSE attributes. This is exactly what Iget. The same is true for all the other representations.
My only guess concerning what is happening is that, somehow, the primaryenhanced code is embedded somewhere in the program and cannot be dislodged bythe material in Table &1. In the example table, the codes shown are ( and ). These are taken from the Televideo 950 terminal. The Wyse 60 uses these codesto generate write protection. Could it be that these codes are hard-coded intoSpellbinder and cannot be dislodged, and are thus conflicting somehow with thecodes I have tried to use?
By the way, the Wyse 60 is a flexible beauty to behold. It can be run innative mode, Wyse 50, 50+, or 100 modes, or various Televideo modes, includingthe 950. The comments I made above about installing my printer to renew myknowledge of its capabilities apply also to my terminal. I always run it innative mode and always go through the tedious installation procedures.
Look at this problem at your leisure and let me know if you have anysuggestions. It is not a tragic situation; I can get around it in many ways. However, if I can resolve this one, it gives me more confidence inunderstanding how Spellbinder operates ~=010~Q~=001~under thehood~=010~q~=001~.
As I mentioned on the phone, at some point I will send you a sort of criticalreview of Spellbinder. Thus far, it appears to be a lot more powerful thanWordStar; not only easier to learn and use, but does quite a bit more tasksnecessary for preparing manuscripts and other documents.
One immediate gripe which I thought inherent in Spellbinder was not listing atthe top of the screen the name of the file being edited. I quickly learned,however, to get around this by using the ~=002~.r ~=001~command followed by thename of the file. This way, I can always go to the top of the file and remindmyself of the file being edited. I am sure there must be better ways, but Ihave only gone through the middle of Chapter 4 thus far. I will be leaving inthe next two days for the rest of June and will not have an opportunity tocontinue my practice sessions. However, I will try to do as much as I can tocomplete through Chapter 8 in the next two days. I will also take the manualwith me and study it while I am away, every chance I get.
Incidentally, the laser printer that was advertised by DAK is an OfficeAutomation Systems ~=010~Q~=001~Laserpro Silver Express~=010~q~=001~. It runsat 8 ppm, emulates LaserJet+, Epson FX-80, Diablo 630, IBM Proprinter, QumeSprint, and NEC Spinwriter. It comes with 33 built-in typefaces, four of whichare scalable fonts similar to Helvetica, Times Roman, Avant Garde, and Optima. It presumably lists for $2800; DAK's price is $900, which includes 1.5M RAM anda fistful of MS-DOS software.
Have a good summer. Keep up the good work with ~=003~The Z-Letter, ~=001~andget back to me at your own convenience. I appreciate folks like you who aredoing a hell of a lot for the 8-bit community.
..c+
Brotherly,
Lloyd Hogan
211 N. Dyer Street
Elizabeth City NC 27909
..c-
~=003~Lloyd, I will look at the terminal-customization tables you sent me afterI get this issue out, and see whether I can find anything wrong with them. Since I use Spellbinder as my editor, and do the actual printing on a LaserJet+controlled by MagicIndex, I have not tried the kind of elaborate terminalcustomization that you're getting into. Most of the effects you describe I doon a laser by changing downloaded fonts. I'm glad to see that you're having alot of fun exploring the vast potential of Spellbinder.
Spellbinder does not have a built-in function for the name of the input oroutput files. This is a philosophical question in the design as much asanything else; word processors that work on the file on disk should, I agree,tell you what file you're altering. When you use Spellbinder, you are notaltering a file on disk; you've opened such a file, copied all or part of it tomemory, and you're altering the copy in memory. If you save the file to thesame name, or do other operations, you may then, and only then, alter the fileon disk. If you save it under a different name, you have a different file.
There are several ways to display the file name. Consider the following macro,which I wrote and tested just now:
..i5
:%1 = $3
:%2 = $2
t
:%A = !
:%B = !
b0
f%1-1
:mc%2
:pr "#0/This file is named %B."
:in
..i0
This macro is based on the SAVE macro by B.V. Deltour, which was published inthe October 1989 issue of the Eagle Computer Users Group newsletter. Thatmacro, in turn, derives from the example on returning to your original startingpoint on pages 4-5 and 4-6 of the Spellbinder Macro Manual.
This NAMEIS macro assumes that your file begins with a remark giving the nameof the file, such as
.r SIS9106.LTR is the name of this file.
It also assumes that your file is small enough to fit into memory all at once,since otherwise this remark won't be in the edit buffer. Anyway, the first twolines save the line and column, respectively, where the cursor was when youinvoked the macro. The ~=002~T ~=003~command then moves the cursor to the topof the edit buffer, where your remark is. ~=002~:%A = ! ~=003~stores the firsttoken of your remark (the ~=002~.r) ~=003~in a text variable. The next linestores the second token, the file name, in text variable %B. The next threestatements move the cursor to column 1, then moves the cursor forward and downfrom there to restore it to where it was before it went off to read the filename. The statement ~=002~:pr "#0/This file is named %B." ~=003~displays amessage like
This file is named SIS9016.LTR.
at the top left of your screen, and the ~=002~:in ~=003~command makesSpellbinder wait until you hit any key before erasing the message and resumingnormal operation. Del's SAVE macro works similarly, except that itautomatically writes the file to disk with the name in the remark:
..i5
:%1 = $3
:%2 = $2
t
:%A = !
:%B = !
b0
wo/%B
w/wd
f%1-1
..k0
. Page 29 this issue is the Staunch ad.
..n0
..k
..i5
:mc%2
..i0
To use either of these macros, type them exactly as shown, then save them todisk as files NAMEIS.WPM and SAVE.WPM. To run them, load them by hitting theLOAD key on your Eagle, or typing AD in command mode if you have some othercomputer. They will execute when loaded. Once loaded, they can be executedagain whenever you wish by typing A in command mode, or ~=002~continue ~=003~inedit mode (~=002~continue ~=003~is the vertical ENTER key at the far right ofthe keyboard on an Eagle; for any other machine, ~=002~continue ~=003~iscontrol-A).
If the file is too big to fit in memory all at once, these simple macros willnot work. The macros that will work are too elaborate to present in theLetters column; I hope to find the time to write them up in a futureissue.~=001~
..k0
..c
~=701~PERSONAL ADS~=001~
..k
. These ads are posted for the third time in #13
..c
~=002~H89 for sale~=001~
Working H89 with Magnolia disk controller running three half-height soft-sectorfloppy-disk drives in an external box. The original full-height hard-sectorfloppy-disk drive is still in the case. Full documentation, software. $50 orbest offer. Call Floyd Knapp, (408) 996-1444.
..c
~=002~Communications program wanted~=001~
Looking for any telecommunications program that runs under the CP/M-86operating system. Please call Jimmy Childers in Charlotte NC at (704) 399-8404extension 17 during business hours East Coast time if you have one. ~=003~[[Note: this is 16-bit CP/M and will not run CP/M or MS-DOS programs!~=010~- ~=003~DAJM[]
. These ads appear for the first time in #13
..c
~=002~Disk drives for sale~=001~
Two Eagle IIE SSDD 96-tpi drives in working condition (machine converted todouble-sided drives). $50 each or best offer. Call (415) 455-8022; ask forDon or Jacquie.
..c
~=002~Geneva parts for sale~=001~
Epson PC-8 (Epson Geneva, a CP/M laptop) mother board and keyboard, $50. Contact Lowell Schneider, P.O. Box 680693, Houston TX 77268, or phone (713)288-5113.
..c
~=002~S-100 book available~=001~
Herb Johnson has ~=003~Interfacing to S-100/IEEE-696 Microcomputers, ~=001~bySol Libes and Mark Garrett, for $19.95 plus shipping (list price is $24.95). Call him at (719) 578-0997.
..k0
..c
~=701~MAGAZINE ARTICLES
..k
~=001~The following magazines were received in approximately the last month. Articles relevant to the CP/M and Z-System community, if any, are listed foreach magazine. Where a magazine is generally of interest to our community, itssubscription address is listed, along with the U.S. subscription rate, whetherthere was a relevant article this issue or not.
~=004~Circuit Cellar INK, ~=001~issue 20, April/May 1991. No relevant articlesthis issue. Hardware journal. Circuit Cellar INK Subscriptions, P.O. Box3050-C, Southeastern PA 19398; $17.95 per year (6 issues).
~=004~COG Wheels, ~=001~Vol. 9 No. 8, 5/11/91. No articles as such, but wholecontents of interest to Osborne and Kaypro users. Cincinnati Osborne Group,c/o David Haldeman, 2063 Beechmont Ave., Cincinnati OH 45230; $20 per year.
~=004~The Computer Journal, ~=001~#49, March/April 1991. ~=003~ComputerNetwork Power Protection, ~=001~by Wendell H. Laidley. ~=003~Controlling HomeHeating and Lighting, ~=001~by Jay Sage. ~=003~Getting Started in AssemblyLanguage, ~=001~by A. E. Hawley. ~=003~The Z-System Corner: Putting the NZCOMVirtual BIOS to Work, ~=001~by Jay Sage. ~=003~PMATE/ZMATE Macros: 2.Terminology and Utility Subroutines, ~=001~by Clif Kinne. ~=003~Z-BestSoftware: Birth of a New Program, ~=001~by Bill Tishey. Main Z-Systemmagazine. See the ad elsewhere in this issue for subscription information.
~=004~Computer Monthly, ~=001~June 1991. ~=003~WordStar's Page Control DotCommands, ~=001~by Benjamin H. Cohen. ~=003~Novice Notes On WordStar 4,~=001~by Thomas McEnroe. ~=003~SuperCalc On the Osborne 1 Wide Screen,~=001~by Donald A. Baumann. An official outlet for FOG news. Regular columnsfor Coleco Adam, TI-99, Commodore 64 and 128, Timex/Sinclair, Apple II, TRS-80,as well as PC, Mac, Amiga, and other incompatible computers. Listings ofbulletin boards and user groups every issue. Lots of ads, some for ourcomputers. $15.95 per year from Computer Monthly Subscriptions, P.O. Box 7062,Atlanta GA 30357-0062.
~=004~8 Bits and Change!, ~=001~Vol. 1 No. 5, June/July 1991. ~=003~Trenton'91, ~=001~by Lee Bradley. ~=003~NZCOM and Trantor, ~=001~by Daryl D.Gehlbach. ~=003~A Z'ified PacPerson, ~=001~by Bruce Morgen. Lots of humorevery issue, too. See ad for subscription information.
~=004~PC Publishing and Presentations, ~=001~April-May 1991. ~=003~Fonts forthe Forgotten, ~=001~by Daniel Will-Harris, lists sources of scalable typefacesfor the LaserJet III. June-July 1991. ~=003~Experiment With Type, ~=001~byDaniel Will-Harris. ~=003~Tracing & Tracking, ~=001~by Ross Smith. Ofinterest to publishers. Regular PostScript and typeface columns. Assumes youhave the latest model PC and don't care about the price tag on printers. $18per year from PC Publishing and Presentations, P.O. Box 941909, Atlanta GA30341-9958.
~=004~Publish, ~=001~May 1991 and July 1991.
~=004~Silicon Valley Computer Society Journal, ~=001~May 1991, June 1991.
~=004~The Staunch 8/89'er, ~=001~issue 22/23 (Jan-Apr 1991). Many shortarticles, pretty specific to Heath/Zenith computers running either HDOS, CP/M,or the Z-System. Invaluable for Heath/Zenith owners. See the ad elsewhere forsubscription information.
~=004~VMEbus Systems, ~=001~June 1991. Not usually relevant to our community,but this issue has ~=003~Debugging your C language programs, ~=001~by TerryShankland and John Black.
..k0
..c
~=939~EAGLE COMPUTER USERS GROUP~=001~
..k
The Eagle Computer Users Group is one of the few remaining support groups forusers of Eagle computers, both the CP/M line and the later 1600 and PC models. Because Spellbinder was bundled with Eagle computers, ECUG is also aSpellbinder users group. Anyone who acquires an Eagle computer is urged to getin touch with ECUG, P.O. Box 3381, Saratoga CA 95070, phone (408) 972-1965.
..c
~=002~Meeting place~=001~
ECUG meetings are held at Tandem Computers Incorporated, 10435 North TantauAvenue, Cupertino. To get there, take 280 to the Wolfe Road exit; turn left atVallco Parkway; turn left at Tantau; go over the bridge; and turn in where itsays ~=010~Q~=001~Tandem Computers~=010~q~=001~ on the left. There is onceagain a guard, at the side lobby. He can see you on the security cameras, butit may take him a minute to come to the front door and let you in. Sign in onthe ECUG sign-in sheet; the guard will tell you which room we're meeting in.
Meetings are the second Saturday of every month, from 9 A.M. to Noon. Theremaining 1991 meetings will occur on July 13, Aug. 10, Sep. 14, Oct. 12, Nov.9, and Dec. 14.
..c
~=002~June 8 meeting~=001~
Our June meeting was attended by David McGlone, Bill Bradley, Bob Vinisky, BillJosephson, Bob Kowerski, Dick Dethlefsen, Dave Gauch, Shirley Welch, DaveHonkala, Jack Morse, Jerry Davis, and Rudy Stefenel. Repeated electronic mailmessages to Tandem security were never acknowledged, but must have beenreceived, because a guard was present. Since he hadn't been told ~=003~why~=001~he was working there that morning, I told him about
..k0
. Page 32 this issue is the Sage MicroSystems East ad.
..n0
..k
our group, and when we met. With only one guard, he must sit in the sidelobby, where all the monitors for the security cameras are, rather than thefront lobby, so people arriving at odd times may not be seen immediately. Please be patient if he does not come let you in right away.
At the Foothill Flea Market, before the meeting, I got an enclosure with twodisk drives, a Xebec S1410 manual, and a NEC Starlet with manuals. The XebecS1410 is the hard-disk controller in the Eagle IV, Eagle V, File 10, and File40. I made 8~=010~@~=001~x11 copies of it for myself, Jerry Davis, BobVinisky, and Rudy Stefenel; these will be delivered at our next meeting. TheNEC Starlet is a CP/M laptop; I had never set eyes on one before, though I hadheard of them.
Jerry Davis spoke on installing the Micro Solutions MatchPoint and CompatiCardIV in my Tandem 6AX (more on this in an article in the near future). He alsorecommended a powerful but relatively inexpensive desktop-publishing packagecalled Textra, $95 plus $4 shipping and handling, Ann Arbor Software, 345 S.Division, Ann Arbor MI 48104, phone (313) 769-9088.
..c
~=002~June 15 gathering of vultures~=001~
Through Rudy Stefenel we learned that Lowell Schneider, who has run a computer,TV and VCR sales and repair business, was closing it and moving to Texas. Rudy, a friend of his whose repairs VCRs, Bob Vinisky, and myself got togetherthe Saturday after the regular meeting to pick over what Lowell didn't considerworth moving. Everyone bought scads of junk with interesting potential. Icame away with three Wyse 100 terminals (one that's supposed to be in workingcondition, one that may be, and one that definitely isn't), a whole box of Wyse100 keyboards, an Epson Geneva carrying case, two TRS-80s (one that's supposedto work, and one that doesn't have drives or a drive controller), and a hugepile of manuals for various computers and terminals.
..c
~=002~July 13 meeting and potluck~=001~
..o5 i5
~=002~9:00~=001~ Meeting begins.
..o5 i5
~=002~9:30~=001~ Bob Vinisky will demonstrate ZREMOTE by running his Eagle IVfrom Televideo 950 and Wyse 100 terminals.
..o6 i5
~=002~12:00~=001~ ECUG meetings ends.
..o5 i5
~=002~2:00 Potluck get-together ~=001~at the home of Bill Bradley, 574 BelfastCourt, Sunnyvale CA 94087, phone (408) 737-1171.
..i0
..c
~=002~ECUG library~=001~
The contents of the ECUG Library reside at the editor's house. Members mayborrow them between one meeting and the next. Either call me evenings at (408)293-5176 and ask me to bring them to a meeting, or phone to arrange a time tocome over and borrow them.
..c
~=002~ECUG software libraries~=001~
ECUG has two software librarians. Anyone seeking CP/M or Z-System softwareshould contact Ken Thomson, 71 Rosenkranz Street, San Francisco CA 94110, phone(415) 648-7550. For PC (MS-DOS) software, our librarian is Jack Morse, 7390Rainbow Drive, #1, Cupertino CA 95014, phone (408) 252-6103.
Please note that, as ECUG is no longer a corporation, the officers of the clubdo not wish to handle money (except those, like Shirley Welch and myself, whohave businesses and do so as part of the business). Therefore, when yourequest disks from Ken or Jack, send them the floppy disks and the postage tomail them. They will copy the software you request onto your disks and mailthem back to you. That way no money changes hands, as would be the case ifthey continued to charge a fee per disk.
No PC software was received this month.
..k0
..n0
..c+
~=701~EAGLE HARDWARE BULLETIN
Eagle BIOS EPROMs as of June 17, 1985
..c-
~=003~Editor's note: Back when Eagle Computer was still in business, theymaintained a tech support bulletin board, on which were posted a number ofEagle hardware bulletins such as this one. I print them here as a service toECUG members with Eagle 1600s and Eagle PCs. We will print the others inmonths to come, thanks to David Banoff, who gave them to me on disk.~=002~
..>5 15 30 35 45 55 65 75
>0Machine >1Part Number >2Rev >3Version >4Socket >5Date >6Cksm >7Desc~=001~
>0E-1600 >162-2732-001 >2A >3v. 1.01 >4u403 e >52/18/83 >6C8DC >7BIOS
>0E-1600 >162-2732-002 >2A >3v. 1.01 >4u404 o >52/18/83 >6F862 >7BIOS
>0E-1600 >162-2732-001 >2B >3v. 1.03 >4u403 e >54/13/83 >7BIOS
>0E-1600 >162-2732-002 >2B >3v. 1.03 >4u404 o >54/13/83 >7BIOS
>0E-1600 >162-2732-001 >2C >3v. 1.03 >4u403 e >54/15/83 >7BIOS
>0E-1600 >162-2732-002 >2C >3v. 1.03 >4u404 o >54/15/83 >7BIOS
>0E-1600 >162-2732-001 >2D >3v. 1.04 >4u403 e >55/18/83 >60681 >7BIOS
>0E-1600 >162-2732-002 >2D >3v. 1.04 >4u404 o >55/18/83 >6EA98 >7BIOS
>0E-1600 >162-2732-001 >2E >3v. 2.2 >4u403 e >57/13/84 >67AC4 >7BIOS
>0E-1600 >162-2732-002 >2E >3v. 2.2 >4u404 o >57/13/84 >61907 >7BIOS
>0Turbo >162-2764-007 >2D >3v. 2.4 >4u705 e >55/2/85 >64207 >7BIOS
>0Turbo >162-2764-008 >2D >3v. 2.4 >4u506 e >55/2/85 >627F9 >7BIOS
..>5 10 20 30 40 50 60 70
..LD5 LL662
~=002~Art Credits
~=001~The schematic of the ZPU card on our cover, and the timing diagrams onpages 9 and 11, were sketched by Herbert R. Johnson. Deborah Snavely preparedthe originals for printing in this issue on her Macintosh IIsi.