Issue #17 - November/December 1986

Ramblings From The Ridge
Industry Observations
Beginning Basic
More Basic
ADAM System Calls
CP/M And You
Interfacing With ADAM - Part II

A Great Loss
Bulletin Board
Glitches, Bugs, Errata, Etc.
User Group News
Multiwrite (Review)
Learning Basic (Review)
ADAM Suppliers
Back Issues Of ECN
Basic Programs

Expandable Computer News (ECN) is published bi-monthly by Sage Enterprises. Subscription rates are $12.00 per year (6 issues) U.S. and Canada; $18.00 foreign. All subscriptions payable to Sage Enterprises in U.S. funds only. Send all correspondence (subscriptions, ads, reviews, orders, articles and products) to: Sage Enterprises, Expandable Computer News, Rt. 2, Box 211, Scrivner Rd., Russellville, MO 65074. Telephone 314/782-3448 from 9 am to 4p m CT Monday, Tuesday, Thursday, Friday.

Staff: Editor - Darrell R. Sage, Associate - Shirley I. Sage, Assistants - Carol Quinn, Cover by Ted Gocal

NOTE: The views expressed by contributors to ECN are not necessarily those of the publisher. ECN and Sage Enterprises are not in any way affiliated with Coleco Industries, Inc. We welcome contributions of original articles, programs, reviews, comments, questions, etc. We are unable to pay for such contributions at this time. Please include a signed statement giving us authorization to use your contribution. We would like to thank all of our subscribers for their assistance–without them this publication would not be possible. Coleco, SmartBASIC, and other Coleco products are registered trademarks of Coleco Industries, Inc.; other trademarks apply to titles of products and are held by those companies referenced.

Sage Enterprises has available for sale a number of products for the ADAM Family Computer System as listed below. To order any of these products send check or money order payable to Sage Enterprises in U.S. Funds to the address listed above. Missouri residents please add sales tax. All prices include shipping and handling.



Blank Data Pack (Loranger)

PACKCOPY software copier

CONVERT CP/M Disk Transfer Program

Program Library I, II, III (price each)

Program Library 4 (ddp)

Program Library 4 (disk)

Foreign Price

$8.00 US

$45.50 US

$40.95 US

$13.30 US

$10.00 US

$7.00 US

U.S. & Canadian Price

$5.52 US

$41.50 US

$36.95 US

$9.95 US

$7.00 US

$5.00 US

Ramblings From The Ridge


by D. Sage
    It has been an interesting two months since the last issue. I have talked about lightning before and we recently had an experience with it as has ADAMLand. The Bulletin Board carries a request for assistance on behalf of ADAMLand. In ADAMLand's case they apparently suffered both equipment and software damage as a result of the lightning.
    Our lightning struck the incoming power lines to our house, which managed to distribute the spike throughout our electrical circuitry. Fuses were blown, light bulbs blew, our satellite receiver was zapped, and when the lightning departed it blew out one door bell button and struck and exploded a vacant bird house in our back yard. No, we suffered no computer or software damage. Having seen lightning in action before, I am extremely careful when it comes to protecting my computers and software. All of our equipment is hooked to outlets with surge/spike protectors and are plugged into switchable power strips that also carry surge protection. I always turn off all of the power strips and all of the equipment. I never store software in or near metal shelving or cabinets. To do otherwise is simply asking for trouble.
    Of course, nothing can protect equipment or software from a direct strike, but it pays to be cautious if you value your investment. I hope that ADAMLand is able to recover from their loss and restore all records. If you were a subscriber or customer of theirs, you need to contact them in writing, they ask that you NOT call.
    By the time this newsletter hits the mail, our first ADAM will be nearly three years old. It was an expansion module and has served us well over that time. It is still alive and working, although it has a number of bugs that existed in the earliest models. I am still in the process of finishing my office. Last night I had to stop and spread gravel for the driveway. We hope that our heating and air conditioning will be completed soon. Especially the heat, since winter seems to be on the way. At least they are working on it, so it shouldn't be long.
    After all this time, Coleco finally contacted us. They wanted to know if it was all right to give out our phone number to people that needed help. Apparently they have been referring people with hardware problems to us as well as people looking for general support. A number of people have become quite irate when they found out that we don't fix ADAMs or don't provide free help. Somehow the people on the hotline implied that we were in the business of doing that for Coleco. As those of you who have been with us for a long time know, Coleco never seemed to be willing to cooper­ate with any of the user groups. You also know that we don't fix computers. I used to not mind helping people over the phone, but since these people are not subscribers and never seem to become subscribers, we have asked that Coleco stop giving out our phone number. We have also tried to clarify to them what we and other user groups do. We'll see. What really gripes me, is the fact that I tried to convince Coleco at the outset that user groups were important to the success of the ADAM. Of course, they didn't believe me and ignored us. Instead they cooperated with Taylor Barcroft and the now long dead Garden of ADAM and ADAM User's of America organization that he represented. Now Coleco has decided since they dropped the ADAM to let us and other groups take the heat by referring owners to us that have problems that Coleco should be dealing with. I suppose they wonder why we have the attitude we do about them.
    My experience with Coleco has convinced me to drop our planned support of the Amstrad computers. Our experience with them is starting to look a lot like our experience with Coleco.
    In the meantime, I recently received and accepted an offer of full time employment. It was an offer that was too good to turn down. It is an interest­ing and challenging opportunity for me. Yes, it does involve working with computers. So, I must curtail some of my activities with ADAM. ECN will continue, but I simply cannot deal with phone calls in what little spare time I have and it is impossible for me to personally answer all of the mail I receive. I have tried to answer it and simply cannot. I enjoy reading your comments and appreciate your questions, but more often than not the questions I am asked have been or will be answered in ECN. In that way, everyone gets the benefit of your questions and my answers. That is simply the only way I can do my work and have some time left over to maintain my sanity and relax. I have already promised my wife that I will not undertake any new projects for the next three years. I must agree with her, I do need some time off.
    We have made many friends through our years with ADAM and along the way some of them have found new computers and gone in different directions. We value that friendship and miss their many contributions to this publication. Among those early contributors were Harry McDonald, Dick Jones, Joe Blenkle and many others. Since that time all three have sold their ADAMs and gone on to other systems as many of you will also. In a recent anonymous letter, I was accused of being disloyal to the ADAM, I assume, because I have often recommended other systems. In addition I suppose it was because I was considering supporting Amstrad computers. In that same anonymous letter, I was criticized for developing PACKCOPY and thereby destroying the market for all software products for the ADAM.
    This loyalty thing bugs me. I am loyal to my country and family, but I have never considered myself loyal to a toaster, a rug, a water faucet or other inanimate object. I also feel a certain sense of loyalty to my subscribers. But, I have a great deal of difficulty in feeling loyalty to a piece of plastic and metal filled with micro-chips, especially when you consider that the company who sold it obviously had no loyalty for the product and worse yet no feeling of responsibility to their customers. The fact is that ECN has continued to support the ADAM, in spite of the fact that others have ceased to do so. Others failed to deliver products, publications or refund money. Others failed to fulfill obligations which they had advertised and for which they had made commitments.
    Yes there are other computers besides the ADAM. For many the ADAM opened the door to the computer world. It had an impact, but that doesn't mean that anyone is bound to the ADAM. If the ADAM no longer meets your needs, don't expect me to tell you that it does. Right now I can buy a PC compatible computer with 512K, two disk drives, monochrome monitor, printer and software for $1000. I have an ADAM sitting on a computer table in this room that cost $699, connected to a monitor that cost $200 and with two disk drives that together cost $600. Even if the ADAM only cost $300 would you buy the PC compatible or the ADAM configuration that I have. Would you want me to recommend the ADAM to others at this point in time. In about three months you will be able to buy a PC compatible and color monitor with 512K and two disk drives for around $700. Would it be disloyal of me to recommend that someone go out and buy that system instead of spending another $500 on the ADAM. Come on. At least what I write, I put my name on.
    Enough. Enough. I won't even say anything about PACKCOPY.
    This thing is supposed to be fun. Let's enjoy what we have and use it. If you got an ADAM and you like it and you don't need anything else, who cares. Learn to program, write letters on it, play some of the best cartridge games ever put on the market. That's what this is all about and ECN tries to help you find new ways to use ADAM, while not acting like other computers don't exist.
    What have we got in this issue. Lots of good stuff. We have more of John Moore's hardware article and even some interesting diagrams, some of which should have appeared in the last issue. We have another Basic program. More articles on using SmartBasic, including the infamous BLOAD and BSAVE commands. We even have a secret message. And there's part 7 of the never ending series on ADAM'S mysterious system CALLS, some CP/M stuff and more that we hope will interest you.
    If you've got something that you want to share. Send it in. We'll pass it along to everyone (well at least to everyone that reads this thing). Don't be bashful. We had hoped to have another article in Mike Degner's series on SmartLogo, but so far it hasn't arrived. We also are anticipating a public domain version of FORTH to be followed up by some articles. Let's hope those arrive in time for this issue before I send this off to my over-worked printer.
    Not long ago I received a notice from Telegames USA, Box 901, Lancaster, TX 75146, ph. 214/227-7694, indicating that they had available a wide selection of Colecovision cartridges and accessories. These items included the two new products: 'Skiing' and 'Amazing Bumpman' as well as the version of soccer that Coleco sold outside of the U.S. While their prices are not the cut-rate you may be used to, it is at least a source for completing your cartridge collection, especially for items that you are unable to get from anywhere else. If you write them, I am sure they will be happy to supply you with a catalog. Since we have not done business with them, I cannot make a recommendation one way or the other.
    We also received a mailing from a Canadian company that is offering for "evaluation" copies of Coleco cartridges and software on data pack. This appears to be simply a disguised method of selling illegal copies of the software. Because of this I will not name the company. If you received one of these mailings, I urge you not to buy products that are likely to be illegal.
    Oh yes, this is our last issue before the holidays and we want to wish all of you a happy holiday season and will see you again after the first of the year. Return to Top

Industry Observations
by D. Sage
    Apple finally announced the Apple II GS (formerly know as the IIX). This system takes the Apple II one step beyond and moves from an 8 bit to a 16 bit system that can run all (most) existing Apple II software and has the capability of running much more powerful software. This system provides a bridge for those who want a system more powerful and with more capabilities than the old slow 6502 processor can handle. You can buy one of these and immediately have access to about any kind of software that you want. Why Steven Jobs seemed to be opposed to this system is beyond me. I look for it to become Apple's big money maker for years to come. It may even make it difficult for the new open MAC that is to be announced next year.
    The Atari ST series continues to sell well. More and more software is being released daily. With this ground swell, the critics have drawn back into their holes and Jack Tramiel has proven that he can do it without Commodore.
    Commodore managed to show a profit in the latest quarter, although that hasn't seemed to help their stock much. For a while a rumor was going around that Tramiel was threatening to buy back Commodore, who knows. If Jack did, I am sure he wouldn't fire anyone. More cartridges are being announced for the Nintendo system, and the system continues to sell well. Looks like they got the jump on everyone else. I expect the others (Atari and Sega) to resort to price cutting if they don't get a reasonable share of the market.
    Meanwhile, Amstrad finally announced the avail­ability of their PC compatible. They are shipping in England now and expect to quietly introduce the system in the U.S. in January. Although a U.S. price has not been announced, it is expected to be the lowest prices of a PC compatible produced by a major manufacturer of computers. Watch for it, if you can find it. Sears World Trade did not exercise their option to distribute it in the U.S. Instead it is rumored that SoftSell has picked up the distribution rights.
    IBM did not announce a new home computer. With it losing shares of the PC market, it is expected to withdraw from the lower end. I guess they would rather drop a product than reduce their profit margin, which usually is not a small one.
    While I'm on the subject of other computers. Does anyone know anyone who has bought a new Commodore 64C? Or have they even heard of anyone who is considering buying one?
    Till next time. Don't spend all your money on computers, there are such things as food and movies and friends and family. Return to Top

Beginning Basic
by D. Sage
    When writing Basic programs there are a number of editing commands available in SmartBasic that you should learn. Some of these commands are relative­ly gross in their effect while others are more selective.
    The NEW command is a relatively gross command. It essentially erases any program that is currently in memory. Be sure never to use this command if you have a program in memory that you have not yet saved, provided you want to save it. LOADing or RUNning a program from disk or data pack essential­ly causes a NEW command to be executed before loading the program. Generally, you should use NEW before starting to type in a new program. One thing that NEW does not do is reset HIMEM or LOMEM. If these have been changed then you should change them back before entering a new program so that you will have the full amount of memory available.
    The LIST command was discussed in a previous issue and allows you to list the entire program, a single line LIST 100 or a range of lines LIST 100, 200.
    The DEL command allows you to delete lines in much the same way that LIST allows you to list lines. You can delete one line DEL 100, delete a range of lines DEL 100,200 (this deletes everything starting with line 100 through line 200), or delete everything with just DEL. So be careful when using the DEL command.
    Another way to delete lines is to just type the line number with nothing after it. That automat­ically deletes the line. You can replace any line by simply typing a new line with the same line number.
    When you are first entering a line, you can use the BACKSPACE key to delete the last character or repeat it to delete several characters. You can also use the arrow keys. Sometimes it is just easier to retype the whole line.
    You can make changes to a line that already exists by either reentering it or editing it. To edit a line use the LIST command, then move the cursor to the start of the line with the arrow keys. Use the right arrow key to move to the place where you wish to make a change, enter the change and then use the right arrow key to space until you reach the actual end of that program line (which may be on the second or third screen line). When you are at the end, hit the RETURN key. LIST the line and your changes should be there.
    Remember, that once you have finished entering your program, you have to SAVE it to disk or data pack or you will lose it. If you are entering a long program it's a good idea to periodically save it. I recommend that you give these temporary programs different names such as TEST1, TEST2, etc. so that if anything goes wrong you will always have the earlier versions of the program.
    Next time I'll cover more Basic commands and key words. Return to Top

More Basic
by D. Sage
    Some of you have asked for information on using BSAVE and BLOAD in SmartBasic. These commands are used to save machine language that is stored somewhere in memory and to load it back into memory. The ADAM SmartBASIC manual discusses these features primarily in terms of 'Shapes', but they have uses beyond that primarily in implement­ing machine language routines directly from a Basic program or for storing data. Usually you would use this approach for storing data or machine language programs that you wish to use from more than one program. In this article we will use this approach to store data.
    First of all you have to get the data into memory. Usually this is done by reading data from DATA Statements and poking the data into memory, one byte at a time. You can also create your own editor that allows you to enter the data or machine language into memory directly from the keyboard. Let's start with the simpler approach of reading the data from DATA statements. The following program will do this.

10 LOMEM : 32000
100 DATA 77,69,82,82,89,32,67,72,82,73,83,84,77,65,83
110 DATA 32,70,82,79,77,32,69,67,78,13,255
200 Z=31000
210 Y=0
220 READ X
230 IF X = 255 GOTO 500
240 POKE Z,X
250 Z=Z+1:Y=Y+1
260 GOTO 220
550 END

    After you have RUN this program there will be 25 bytes of data stored in memory starting with memory location 31000 and ending with 31024. You will now need to save this information. To do this you will need the starting memory location, the number of bytes, a file name and drive number. To save this data on data drive #1 enter the following line:

BSAVE MESSAGE, A31000, L25, D1

    A31000 is the starting location and L25 is the length. Dl is, of course drive 1 and the name of the file is MESSAGE. Now let's write a program that will load this file and allow us to print it out.


100 LOMEM : 32000
110 PRINT CHR$(4);"BLOAD MESSAGE, A31000, Dl"
200 FOR I = 31000 TO 31024
220 NEXT
300 END

    This program will bload MESSAGE starting at memory location 31000 and then list the decimal contents of the 25 bytes stored at that location. If you want to find out what the message says, change line 210 to the following:


    While the example used here is not a complex one. These programs, nevertheless, demonstrate the use of BLOAD and BSAVE and show you how you can access the information from such a file. I hope that you will find it useful. Return to Top

ADAM System Calls
by D. Sage
    This is the seventh in a series of articles covering ADAM's system calls.
    CALL FCE4 (64740) - Read device dependent status and return the status byte from the Device Control Block for the device. A register = device number.
    CALL FCE7 (64743) - Jump to electronic typewriter mode. (Switch to bank 0, go to 100H).
    CALL FCEA (64746) - Return to caller, not used.
    CALL FCED (64749) - Reset space size releases the unused blocks in the file. If the file is the last entry in the directory then the space is restored to the BLOCKS LEFT parameter. A = device ID, DE = pointer to file name string. Error code is returned in A.
    CALL FCFO (64752) - Check to see if the file is already open and exists in the FCB (File Control Block). HL = pointer to the filename. If file is not opened A = error code, HL = unchanged. If file is open A = file number, B = mode, HL = pointer to start of FCB.
    CALL FCF3 (64755) - Read a block from the specified device and wait for completion. A = device ID, HL = destination of block in RAM, BCDE = sector number on device (block #). Error code is returned in A register.
    CALL FCF6 (64758) - Write a block to the specified device and wait for completion. A = device ID, HL = source address of buffer, BCDE = sector number on device. Error code is returned in A register.
    CALL FCF9 (64761) - Check open mode (sub-type) against attribute. IX = FCB Pointer, HL = direct­ory entry. Z = status ( 1 = ok, 0 = not permit­ted).
    CALL FCFC (64764) - Search directory for file name. Reads each block of the directory into a buffer (in the system's FCB) and scans for matching entry. A = device number, HL = pointer to file name string. If name is found A = 0, BCDE is location of file's starting block.
    CALL FCFF (64767) - Locate directory entry and ignores file type byte. A = device number, DE = address of file name string, HL = address of buffer. A = 0, no error; BCDE = file's starting block.
    CALL FD02, FD05, FD08, FDOB, & FDOE - unimplemented routines. Return to Top

CP/M And You
by D. Sage
    I get a lot of calls asking for advice on commercial CP/M software. Naturally, it is difficult to make recommendations for products that I have not used, so I generally restrict those comments to products that I am familiar with or that have been recommended by others.
    CP/M software is not always easy to find, but nevertheless there is a good deal of it. You will probably not find many places that stock CP/M compatible software, unless they also sell com­puters that use the CP/M operating system. Most of the time CP/M software will have to be purchased by mail order or special ordered by a local dealer. Unfortunately, such software is not available in ADAM format. Such software can be transferred to ADAM format either with a utility program such as our CONVERT or by companies such as Eve Electronics or Elliam Software. Both are good sources of commercial CP/M software. Because commercial CP/M software is seldom copy-protected, it is often quite expensive. A lot of CP/M software is in the public domain, but there is also a lot of commercial software that runs under CP/M. Remember CP/M was the first widely available generalized operating system used on microcomputers. CP/M has been around a lot longer than MS DOS and because it was initially developed for 8-bit computers, software written for it had to be highly efficient.
    Even though CP/M software uses memory efficient­ly, occasionally I have come across a program that will not load and run under ADAM'S CP/M.
    This problem is caused by the fact that ADAM's SmartKey interface eats up some of the TPA (Transient Program Area) that would normally be available to commercial programs. Another problem I have encountered is fitting all the program modules that are required onto ADAM's single-sided disk. Because the first 13 blocks of the disk are reserved for the CP/M system and directory, there is less free space on ADAM's disk than any other CP/M disk format that I am familiar with.
    Some of these problems could be eliminated, if we had a version of CP/M for the ADAM that did not use all the SmartKey support. In other words what is needed is a clean/standard version of CP/M for the ADAM. It would also help if that version was modified so that ADAM used the 40 column screen that is available and would allow user's to use one of the standard configurations that comes with most commercial software's installation routines. It could also directly allow the use of computer disks such as the Zenith 100 single-sided double-density CP/M format. Unfortunately, most of these changes are nearly impossible without a documented BIOS. Coleco of course saw fit not to supply such a BIOS even though it has been standard practice throughout the CP/M industry to include such a documented BIOS.
    Now that I have complained about that and warned you of some possible problems that can prevent commercial software from running on the ADAM, let's get back to the subject of software that is available.
    One of the best spreadsheets available for CP/M systems is Sorcim's SuperCalc 2. I have used this product, although not on an ADAM, and found it to be excellent. A good solid word processor is WordStar. There are versions of the shareware program PC File that is an excellent data base for many home and small business applications. For telecommunications we already have MADAM7 available in the public domain. Another data base, Condor, is one that is relatively easy to use. In addition T/Maker combines spreadsheet, data base and word processing all in one package. A good place to go for advice and sources of products is the CP/M sig on CompuServe or other bulletin boards. Remember, though, before you start looking for CP/M software, be sure you are familiar with CP/M and its limitations on the ADAM. Also you need to remember that much of this software is designed to run on systems with two disk drives. If you plan on using one disk drive and a data drive, be prepared for slow going and periodic data drive errors that will drive you nuts.
    If you are looking for languages, then you are in luck there too. In addition to MBASIC there is CBASIC which is one of the best business oriented versions of Basic available. There are even versions of Cobol, Fortran, Forth and C on the market as well as versions of PASCAL, such as Borland's Turbo PASCAL.
    Another point that really needs to be made, is that if you expect your ADAM to perform like a CP/M system with an 80 column screen, it won't. You either will have to configure the software to work with a reduced 32 column screen or put up with the scrolling 80 column screen. Your other choice is to get an 80 column board for the ADAM and unfortunately those aren't cheap. Your ADAM can do a lot of things well, others not so well. It is your decision as to how much money you are willing to invest in an abandoned system. If you expect your ADAM to perform like a high-powered business system, then you are likely to be disappointed. The ADAM was simply not intended for that purpose. It was designed as a relatively easy to use home computer that unfortunately contains a number of frustrating bugs. Return to Top

Interfacing With ADAM - Part II
by John Moore
    If we examine how the signals on ADAM's various lines (or busses) change during certain operations, we can see how to actually make ADAM do something! The general rule is simple, when ADAM wishes to send information somewhere, the address will appear on the Address lines, the actual information will be on the Data lines, WR not will go low (since ADAM is sending the information), IORQ not will go low, and if the data is going into memory, MREQ not will also go low.
    There are two main ways to handle interfacing. One is called "memory-mapped" and the other "I/O mapped."
    In memory-mapping, you decode and encode the busses so that a physical device acts like a certain location (or more likely locations) in memory. The advantage is that you can write to or read from that device with simple operations like a SmartBasic PEEK or POKE.
    The disadvantage is that two things cannot be at the same place at the same time. If you "memory-map" a device to some specific location in memory, then any program which attempts to use that location as memory will either give improper results or crash altogether! Memory-mapping also usually requires you to use all 16 address lines.
    I/O mapping makes use of what is usually called the computer's "I/O space." ADAM's Z-80 chip has 255 I/O "ports." Some of these are already in use for the video chip, the sound chip, modem, dialer, etc.; but there are many available for us!
    The 8255A interface chip is designed to let us work with as many as three peripherals at once. This uses 3 ports, but we need to reserve another port for the control of the 8255A chip itself. Look at the following representation of 4 binary numbers:


48  0  1  0  0  1  0  0  0
49 0 1 0 0 1 0 0 1
4A 0 1 0 0 1 0 1 0
4B 0 1 0 0 1 0 1 1

    Notice that the first six bytes of all four numbers are the same! This means that if we can arrange a circuit that can recognize this pattern of ones and zeroes, our circuit will be able to tell when ADAM is trying to "talk" to it.
    A good place to start is a 74LS30 chip. This is an 8-input NAND gate. To put it another way, the 74LS30 is a chip that requires 8 inputs. When all eight are high, the output of the chip will be low. In any other situation, the output from the chip is high.
    This would be nice if we were looking for an address in which all of the bits were high, but that's not the case. The numbers we want have bits 7, 5, 4, and 2 low. The answer to this is simple. The 74LS04 hex inverter will reverse (or invert) as many as 6 signals. Therefore we will connect lines 8A6 and BA3 directly to the 74LS30, and will connect lines BA7, BA5, BA4, and BA2 to the chip through the inverters.
    This leaves us with two inputs of the 74LS30 unused. One of these will be connected to +5 volts through a 10K resistor, so it will always be high. The final line is connected to BMREQ not. The reason for this is simple. There is more than one reason why the numbers 48, 49, 4A, and 4B could show up on the address lines. One of these is that ADAM could be addressing memory.
    When this happens, BMREQ will not go low. If even one of the inputs to the 74LS30 is low, the output must remain high. So, using BMREQ not like this means that our circuit could never be fooled into thinking that a memory operation was intended for it.
    Now we take the output of the 74LS30, and connect it to one input of a 74LS02 NOR gate. The other input is BIORQ not. A NOR gate will go high only when both inputs are low. If there is an I/O operation, BIORQ not is low. When the numbers 48, 49, 4A, or 4B appear on the address bus, and there is not a memory operation, the 74LS30 goes low. At this point the 74LS02 will go high! Our decoder is almost complete.
    In looking at the specs for an 8255A, we notice that one of the pins is labeled CS. You should remember that this means "active low", but our decoder goes high when it's active. Another problem! Simple subtraction will tell you that we have 2 inverters left on the 74LS04 chip, so we use one of these. Problem solved!
    Looking at the diagram, you will see that there are a number of other connections to the 8255A. All 8 data lines connect, BA0 and BA1 must go to this chip, as well as our new "chip select" signal, BWR and BRD. You should also connect several pins to ground or through 10K resistors to the +5v bus.
    By this point, you have a functioning 8255A connected to ADAM and mapped into the I/O space as ports 48, 49, 4A, and 46. The next article will examine some of the uses of this interface and design a circuit to let ADAM control electrical appliances, and even see how to add a Real-Time Clock/Calendar!
    (NOTE: All diagrams pertaining to this series of articles can be found here: Figure 1    Figure 2.
Return to Top

A Great Loss
by Thomas Wozniake
    As many of you know, ADAM and ECN has lost one of its most knowledgeable and helpful individuals in the loss to Atari of Joe Blenkle. His contributions to ADAM and ECN will surely be missed by all. I know from experience what help Joe was. His articles and reviews were informative and to the point. I feel he really did his homework before writing his column.
    I would like to say thanks, and wish him a lot of luck. Return to Top

Bulletin Board
 FOR SALE: Mint condition used Coleco cartridges. Spyhunter, Dambusters, Illusions, forty others. Send SASE for list to J. Cooper, 17 Old Wood Rd., Storrs, CT 06268.
 FOR SALE: C-interface and Comrex CR220 printer with descender ROM, many software DDP titles and other items. Send a SASE to Kyle Alons, R.R. 1, Box 17, Boyden IA 51234, for a complete list.
 WANTED: I would like to trade the CPU of my ADAM expansion module for a stand alone ADAM CPU with someone who doesn't use his ADAM often. I will even pay for the trade. There is nothing wrong with my CPU, I just want to be able to connect Eve's VD-MB 80. George Hurtado, 313 Pico Rd., El Centro, CA 92243.
 FOR SALE: Closeout prices on remaining cartridges and software for Colecovision/ADAM. Send SASE to Stanley M. Siembor, 378 Sunningdale Drive, Inkster, MI 48141.
 FOR SALE: ADAM system with 2 tape drives, 1 disk drive, 64K expander, modem, SP-1 interface, plus a variety of software and data packs or disks of public domain software. $395 plus postage. Send SASE to Bo Browning, P.O. Box 303, Kinsman, OH 44410.
 FOR SALE: Available over 120 Public Domain Disks, CP/M, BASIC, programs, utilities, graphics, games, music, toolkits, etc. To obtain listing send SASE to Barry Wilson, 1566 Wood Lake Dr., Chesterfield, MO 63017.
 FOR SALE: ADAM with 2 data drives, 2 disk drives, modem, software, books, and more. All items in original packaging and includes documentation. $800. Send SASE to Brian Stranahan, 8580 Buggy Whip Rd., Alta Loma, CA or call 714/989-1394.
 HELP: ADAMLAND, 795 Garfield, Lander WY 82520, needs all of their members to WRITE TO THEM (NO phone calls) so that they can complete their records of membership. Their building was recently nearly struck by lightning, which took out a lot of equipment along with 47 disks containing, among other things, membership lists. Also notify any other members that you may know.
 FOR SALE: Expansion Module #1 (Atari game player) $25. Contact Gary Witt, 405 E. College #19, Carbondale, IL 62901 or phone 618/457-2568 after 5 pm CT.
 FOR SALE: Colecovision unit with almost new controllers and built in Audio/Video cables for Composite Monitor Hookup, and 67 Colecovision game carts. $350 or best offer. Will consider trading for new EVE Double sided disk drive. Send SASE with your offer to Jeff Silva, 4602 109th St. SW, Tacoma, WA 98499.
 FOR SALE: Only $5 each...original Donkey Kong, Donkey Kong Jr. and Super Zaxxon data packs. Also, two black Colecovision controllers--$5 for both. Joe Blenkle, P.O. Box 41746, Sacramento, CA 95841. Return to Top

Glitches, Bugs, Errata, Etc.
    Whoops, I goofed. I don't program in LOGO so didn't notice. David Jacksch tells me there is a problem with the "" LOGO program on pages 18 and 19 of the last issue (16). The "BEGIN" procedure attempts to load and draw "PETPICT1", but you will get an error unless it exists on the disk drive or data drive.
    Al Fitzgerald sends in the following information: I've discovered a national bulletin board for ADAM users. It's called GEnie, the General Electric system that offers E-mail, roundtables, and developing new areas, all at a very reasonable cost. It's only $5 an hour running a 300 or 1200 baud modem at non-prime time. It costs around $18 to join and after that you pay only when you've used a 60 minute period. To find the ADAMites you go to the TI round table and check out Category 13. It's for orphans like us. If enough of us get into the board they'll consider setting up a round table for ADAM users. Since this allows folks from Canada and from coast to coast to contact one another using local phone numbers or 800 numbers, I see it as a real boon. The number to call for the GEnie Info Network is 800-638-9636. In case anyone is looking for me, my E-mail name is "adeodatus". Don't laugh I was trying to be original.
    Robert Edwards sends in the following: to answer Roger Fraser on loading a program with another (Issue #15), if you use the following pokes you can simulate "CHAIN" with "LOAD": POKE 24010,163 : POKE 24011,62. To get back to normal mode use: Poke 24010,24 : POKE 24011,228. Return to Top

User Group News
    The list of users' groups continues to grow. If there isn't one in your area to join - start one! As of this issue a number of user's groups have changed addresses. If this happens with your group, please let us know.

#1 Adam User's Group
P.O. Box 3761 - Attn: Jay Forman
Cherry Hill, NJ 08034

James E. Gilbert
4608 Lakeview Dr.
Huntsville, AL 35810

Victor L. Watford
P.O. Box 777
Russellville, AL 35653

Richard Bains
7210 Bulen Drive
Anchorage, AK 99507

Danny Levitt
4525 S. White Pine
Tucson, AZ 85730

Robert R. Marentes
9425 N. 38th Ave.
Phoenix, AZ 85021

Harvey Klein
So. California ADAM Users
1736 So. Bedford Street
Los Angeles, CA 90035

Frank Fleich
13381-19 Magnolia Ave.
Corona, CA 91719

Central Calif. Adam User's Group
James Turner, Jr.
20110 Ave. 19
Madera, CA 93637

San Diego Adam Users Group
Dr. Harold Alexander
37 Catspaw Cape
Coronado, CA 92118

AUG of San Diego County
868 N. 2nd St. #242
El Cajon, CA 92021
ph. 619/445-2400

Bay Region ADAM Information Network
550 27th St. #202
San Francisco, CA 94131
ph. 415/282-3056

Inland Empire Users Group
Ann Quetel
6644 Seine Ave.
Highland, CA 92346
ph. 714/862-5807

Denver ADAM User's Group
1416 Lipan St.
Denver, CO 80204

ADAM Users Group #305
John F. Busby, II
6634 SW 41st St.
Davie, FL 33314

Playground Area ADAM User's Group
Howard Pines
812 Pinedale Rd.
Ft. Walton Beach, FL 32548

Robert J. Niemeyer
292 Boca Ciega Point Blvd. N.
St. Petersburg, FL 33708

ADAM User's Group
Michael G. Graham
217 Albert St.
Winter Springs, FL 32709
ph. 305/327-1387

ADAM Support Group
John Moore
1870 Fisher Tr. NE
Atlanta, GA 30345

Hawaii AUG
Harlan Fletcher
2335C Apollo Ave.
Honolulu, HI 96818
ph. 808/422-4019

Donald R. Lager
5415 N. 2nd St.
Rockford, IL 61111
ph. 815/877-7786

Kansas Adam Users Group
David E. Carmichael
1325 N. Meridian, Apt. 201
Wichita, KS 67203

KC Users Group
Joe Reardon
1513 Tauromee
Kansas City, KS 66102

Greater Cincinatti Adam Users Group
c/o Keith Bowman
P.O. Box 434
Alexandria, KY 41001

ADAM Network
P.O. Box 85
East Detroit, MI 48021

Bill & Nancy Rahn
12426-15th St. S.
Afton, MN 55001
ph. 612/436-6577

Outsider's Users Group
Donald Viltiard
P.O. Box 771
Starkville, MS 39759

Omaha ADAM Users Club
Norman Castro
809 West 33rd Ave.
Bellevue, NE 68005
ph. 402/291-4405

Al Roginski
4327 Thorndale Pl.
Las Vegas, NV 89103

Metro Adam User's Group
Russell Williams
414 W. 149th St.
New York, NY 10031
ph. 212/208-0645 (9am-5pm M-F)

Genesee Valley Adam Users
Donald K. Zimmermah
5132 Jordon Road
Silver Springs, NY 14550

ADAM-X-Change (New York & Canada)
Wade Rowley
12863 Washburn
Wolcott, NY 14590

Tri-Angle Adam Users
Gary E. Hill
L-5 Oak Grove
Chapel Hill, NC 27514
ph 919/968-0299

Mutual ADAM Users Group
Matt Esterak
412 Bettie Street
Akron, OH 44306

Lake Erie Adam Users
Jonathan Fligner
2110 W. 36th Street
Lorain, OH 44503
ph. 216/282-8467
between 4:30pm & 8pm EST

Portland Adam Users Group
Craig Frerichs
P.O. Box 1081
Portland, OR 97207

The (717) Adam Users
Steve Chamberlain
120 E. 4th ST.
Bloomsburg, PA 17815

Midsouth ADAM Users
Roger Burford, Lot 142 NAS MHP
Millington, TN 38053

Adam Users of El Paso
Alan Samuels
4821 Vista Del Monte
El Paso, TX 79922

Houston AAUG
c/o Thomas Rutan
1805 14th Ave. N
Texas City, TX 77590

Norfolk ADAM Group
Gerald M. Steen
1000 Rockbridge Ave. #144
Norfolk, VA 23508

ADAM Users Group of Central Virginia
Thomas J. Kelly
3B, Rt. 664
Earlysville, VA 22936

ADAM Washington D.C. Users Group
Jim Tyson
1811 St. Roman Dr.
Vienna, VA 22180

Puget Sound Adam Network
Valorie Zimmerman
22607 SE 322nd
Kent, WA 98042
ph. 206/886-1167

Dave Sandahl
USNH, Box 2844
FPO Seattle, WA 98778

Robert Dunstan
95 Harland Crescent
Ajax, Ontario L1S 1K2

Derek Townsend
Box 820
Claresholm, Alberta T0L 0T0

J.A. Girard
1420 Ave. Langevin Sud
Alma, Quebec G8B 6B1

Mike Laurier
7350 Roi Rene
Anjou, Quebec H1K 3G6

Mr. G. Hibbert
P.O. Box 10
Mistatim, Saskatchewan S0E 1B0

First Canadian Adam User's Group
P.O. Box 547 Victoria Station
Westmount, Quebec H3Z 2Y6

Winnipeg Adam Users Group
David Fordyce
729 Government Ave.
Winnipeg, Manitoba R2K 1X5

Metro-Toronto Adam Group
P.O. Box 123
260 Adelaide St. East
Toronto, Ontario M5A 1N0

The Bendigo Colecovision Club
W.R. Oldacres-Dear
C1-2 Fenton St.
Bendigo, VIC 3550, Australia

ADAM Owner's & User's Group
Frank Ellis
4 Norman Street
Deakin, ACT 2600, Australia

Return to Top

Product Review: Multiwrite
by Alan C. Samuels
Product: Word processor
Manufacturer: Strategic Software
Media: DDP only
Requirements: ADAM
Price: about $37.00
    MultiWRITE from Strategic Software is a fairly powerful and easy to use word processor for the ADAM. The most unique feature about this program is its ability to display 64 columns on the screen utilizing the ADAM's own graphics (this eliminates the need for horizontal scrolling). The miniature characters are somewhat difficult to see on a composite monitor and a monochrome monitor is likely to be the favorable display for this program. Twenty-two rows of text are displayed.
    In order to operate MultiWRITE, you must have an R-80 version of ADAM (CNTRL-R in typewriter mode) and SmartBASIC version 79 (PRINT PEEK (260) in SmartBASIC's immediate mode). The editor screen is modeled after Wordstar's, with a dotted ruler line across the top along which tab settings are marked. Editing is a mimic of ADAM's SmartWriter with a few plusses and minuses.
    First the minuses. Since it is implemented from Basic, some response time was sacrificed, but it only becomes evident in one situation—scrolling. While scrolling is at least as quick as it is in SmartWriter, the auto-repeat can get out of hand. While the cursor moves along at a constant rate, the keyboard may register dozens of repeat commands when you are holding a key down, such as BACKSPACE or an arrow key. Thus you may release the key and witness the cursor moving past the point you were searching for and go straight to the end of the document! This, like the mini-characters, becomes less severe when you get the feel of it. A second problem is the lack of super and subscript com­mands. Superscripts and subscripts are implemented by setting the line spacing to .5 and positioning the cursor at the position desired for the script, then resetting the line spacing.
    Block operations, such as printing or saving portions of a document are absent, as well as the merge ability. A peculiar discrepancy is the lack of any kind of graphic representation of a "hard" return. This makes it difficult to determine where a paragraph ends. Finally, if a sentence extends past the end of the right margin (as it may after an INSERT operation), a blank line is printed on the printer instead of the line. The bi-directional printing capability of ADAM's printer is also not implemented.
    The shortcomings, however, are more than made up for by the program's plusses. Editing is much quicker than is possible on SmartWRITER. Wordstar-like features make editing a breeze. CNTRL-U toggles underlining on and off, and underlined characters are displayed on screen. CNTRL-C instantly centers a line of text. Blocks may be MOVED and COPIED. The SEARCH feature is case-sensitive (a plus and a minus). WILD CARD inserts an instant space, UNDO rubs out the character the cursor is on. The best feature is the insert mode, which is toggled by the INSERT key, and allows a WordStar like insert feature which returns you to normal editing when you are through (unlike SmartWRITER, which scans through the text slowly before returning you to editing). HOME instantly returns you to the top of the document. And reformatting (CNTRL-F) is extremely fast, allows the document to be right-justified, and as a nice side-effect, instantly navigates you to the end of the text. A file must be saved before it is printed, and a print program is included to quickly print files, if you don't need to load the entire word-processor. Finally, ADAM files (such as SmartWRITER, SmartBASIC, and ADAMCalc textfiles) may be converted in a few simple steps for editing by MultiWRITE.
    Overall, this is a very good WP and an absolute "must" for any who have ever been frustrated by the ADAM SmartWRITER. Overall rating: 7. Return to Top

Product Review: Learning Basic
by Owen McNulty
Product: Correspondence Course
Publishers: National A-Club, Inc., P.O. Box 15068, Chevy Chase, MD 20815
Price: $18.00 plus $30.00 for optional MBASIC disk or $35.00 for MBASIC ddp (Important note: Write the club first indicating your interest before sending any money).
Rating: Excellent
    The course consists of ten lessons mailed over a period of time. Each lesson consists of an instruction part, demonstration programs, and tutorial - a homework assignment which the partici­pant is expected to complete before the next lesson arrives. Then, the participant will get the correct answers to the homework. The course explores programming in the MBASIC dialect of this programming language, which is the most widely used version of MBASIC for the 8-bit personal computers such as Coleco ADAM. MBASIC, created by Microsoft Corp., supports the largest instruction set of all dialects of Basic and is suitable for business and scientific programming.
    In order to participate in the course and learn Basic, the participant doesn't necessarily have to own an MBASIC interpreter. However, if the participant chooses to use SmartBASIC, he will be at somewhat of a disadvantage. With SmartBASIC it is impossible to open more than one file at a time (which severely reduces programming options), to chain or merge smaller modules, to use the so-called double-precision numeric variables, to control the printed copy with the PRINT USING statement, to perform automatic numbering and renumbering of the lines of a program, etc.
    So far, I have received six of the ten lessons. Lesson One introduces the use of such commands as WIDTH, WIDTH LPRINT, RENUM, AUTO, LLIST, etc. Lesson Two introduces the use of such commands as GOTO, IF...THEN, WHILE...WEND, and the TAB func­tions. (Incidentally, the TAB command in MBASIC does not have the 30 space limitation in printing that exists in SmartBasic). Lesson Three intro­duces the use of such commands as INT, RIGHT$, MID$, STRINGS, SPACES, DATA, etc. Lesson Three also features a payroll program which keeps track of employee's hours worked, vacation time accumu­lated, taxes to be deducted, gross pay, net pay, etc.
    Lesson Four introduces the use of parallel arrays and creating loops which will sort out the highest and lowest elements of a data base. Lesson Five shows how to create mailing labels, merge programs, and create a sequential file. Lesson Six explains the RND (random number) command, how to copy sequential files, and how to sort an entire data base either from high to low or low to high. Return to Top

ADAM Suppliers
    The following is a list of a few of the companies that sell ADAM products. To obtain a catalog from these companies, send them a self-addressed stamped envelope.
    Alpha-1, 1671 E. 16th St., Suite 146, Brooklyn, NY 11229, ph. 718/336-7612. They carry a wide selection of ADAM products—hardware, software, supplies, etc.
    DO NOT STAMP SOFTWARE, 2608 West 600 South, Roy, Utah 84067. Software.
    Elliam Associates, 24000 Bessemer St., Woodland Hills, CA 91367. CP/M Software.
    Extended Software Co., 11987' Cedarcreek Dr., Cincinatti, OH 45240. Software.
    M.W. Ruth Co., 510 Rhode Island Ave., Cherry Hill, NJ 08002, ph. 609/667-2526. Wide selection of ADAM hardware, software, & supplies.
    Orphanware, 5665 Myers Rd., Akron, OH 44319, ph. 216/882-4720. Hardware & software.
    Reedy Software, 10085 60th St., Alto, MI 49302. Software.
    The ADAM Depot, 419 Ridgway Ave., Johnsonburg, PA 15845. Hardware, Software & supplies.
    This list is not intended to be comprehensive, nor is it intended to be a specific endorsement of any one company. Nevertheless, in our dealings with these companies, we have found them to be reputable and generally prompt in filling orders. Return to Top

Back Issues Of ECN
    The following back issues are available for $3 each: Issues #1, 2, 8, 9, 10, 11, 12, 13, 14, 15, 16. These should be ordered directly from Sage Enterprises, Rt. 2, Box 211, Scrivner Rd., Russellville, MO 65074. Return to Top

Basic Programs
    The program that follows, DATALYZ, was submitted by Jim Guenzel. It allows you to output a histo­gram, a simple pie chart, a list showing the percent of the total of each number ant the TOTAL, MEAN, MEDIAN, VARIANCE and STANDARD DEVIATION of the numbers.
    Also, you can file the numbers. If you file the numbers you will be asked to enter a name for the file. The program adds a "@" sign to the end of the file name to remind you that it is a file to be used with DATALYZE. It follows that if you later use the file in this program, just type in the name without the "@".
    When you run the program you will be asked to enter a "name" for each number and then the number. Enter "done" when you are finished entering numbers and wait for a few seconds while the program does the math and then follow the prompts it gives you.


12 DIM t(1OO), x(100), X$(100), g$(40, 40)
13 DIM p(100)
18 HOME: IF bad = 1 THEN PRINT " RE-ENTER PLEASE": bad = 0
28 HTAB 8: PRINT "5. END"
30 GET do$
32 IF do$ = "1" THEN 60
34 IF do$ = "2" THEN 60
36 IF do$ = "3" THEN 12530
37 IF do$ = "4" THEN 18000
38 IF do$ = "5" THEN TEXT: END
40 PRINT CHR$(7)+CHR$(7): bad = 1: GOTO 18
70 n = 0
74 IF f$ = "" THEN HOME: GOTO 90
76 GOSUB 13000: GOTO 140
95 FOR i = 1 TO 100
115 IF x$(i) = "done" THEN 145
120 INPUT "ENTER AMOUNT: "; t(i)
130 n = n+1
132 PRINT "Enter 'done' when done"
135 IF n = 100 GOTO 145
136 NEXT i
140 FOR i = 1 TO n
141 t(i) = x(i)
142 NEXT i
150 s = 1
160 GOSUB 2000: REM *MEAN*
180 GOSUB 4000: REM *MEDIAN*
190 l=11
200 FOR i = 1 TO n
210 s$ = x$(i)
230 x$(i) = s$
240 NEXT i
244 INPUT "ENTER 'Y' OR 'N' ";y$
245 IF y$ = "Y" THEN pf = 1: PR#1
247 IF y$ <> "Y" AND y$ <> "N" THEN 242
285 PRINT "TOTAL:", ta
290 PRINT "MEAN:", a
300 PRINT "MEDIAN:", m
320 PR#0
322 FOR i = 1 TO n
323 x(i) = t(i)
324 NEXT i
327 IF pf = 1 AND do$ = "1" THEN 12600
350 IF key$ = "r" OR key$ = "R" THEN 10
355 IF key$ = CHR$(149) OR key$ = CHR$(l57) THEN PR#1: GOTO 250
357 IF key$ = CHR$(155) OR key$ = CHR$(147) THEN GOTO 14000
360 IF key$ = " " THEN GOTO 10
370 PRINT CHR$(7)+CHR$(7): GOTO 330
1010 FOR i8 = 1 TO n
1020 x(i8) = t(i8)
1030 NEXT i8
2000 REM *MEAN*
2010 s8 = 0
2020 FOR i8 = 1 TO n
2030 s8 = s8+x(i8)
2040 NEXT i8
2050 IF s = 0 THEN a = s8/(n-l): GOTO 2060
2055 a = s8/n
2057 ta = s8
2592 i = n: INPUT "ENTER A NUMBER TO CHART (-.99 WHEN DONE):";x(i)
2722 IF s(3) = 20 THEN s(3) = 0: PRINT "PRESS SPACE BAR TO CONTINUE": GET key$
3000 REM
3010 s8 = 0: s9 = 0
3020 FOR i8 = 1 TO n
3030 s8 = s8+x(i8)
3040 s9 = s9+x(i8)^2
3050 NEXT i8
3060 IF s = 0 THEN v = (s9-s8/n)/(n-1): GOTO 3070
4020 t8 = INT(n/2)
4030 IF n = t8+t8 THEN m = (x(t8)+x(t8+1))/2: GOTO 4040
4035 m = x(t8+1)
5010 m8 = n
5020 m8 = INT(m8/2)
5030 IF m8 = 0 THEN RETURN
5040 k8 = n-m8: j8 = 1
5050 i8 = j8
5060 l8 = i8+m8
5070 IF x(i8) <= x(l8) THEN 5110
5080 t8 = x(i8): x(i8) = x(l8)
5090 x(l8) = t8: i8 = i8-m8
5100 IF i8 >= 1 THEN 5060
5110 j8 = j8+1
5120 IF j8 <= k8 THEN 5050: GOTO 5140
5130 GOTO 5020
6010 IF LEN(s$) >= 1 THEN s$ = RIGHT$(s$, l): GOTO 6020
6015 s$ = LEFT$(" ", l-LEN(s$))+s$
7015 i7$ = ">"
7020 FOR i8 = 1 TO n
7030 j8 = INT(lOO*x(i8)+.5)
7040 PRINT x$(i8); TAB(13);
7043 FOR i7 = 1 TO j8
7045 PRINT i7$; : NEXT i7
7047 PRINT " "; t(i8)
7050 NEXT i8
8010 s8 = 0
8020 FOR i8 = 1 TO n
8030 s8 = s8+x(i8)
8040 NEXT i8
8050 FOR i8 = 1 TO n
8060 x(i8) = x(i8)/s8
8070 NEXT i8
9002 PRINT d$; "WRITE "; CHR$(64); f$
9005 PRINT d$
9006 PRINT d$; "CLOSE "; CHR$(64); f$
9010 CLRERR: IF ERRNUM(O) = 5 THEN 9100
9040 STOP
9045 GOTO 72
9100 REM ****FILE NOT FOUND***
9110 PRINT d$; "DELETE "; CHR$(64); f$
9125 PRINT: PRINT "FILE: "; f$; " NOT FOUND"
9140 GOTO 72
12400 REM *PERCENT**
12470 REM *VARIABLES i=index N=number of items P=PERCENTAGES ()=THE SUMS X=EACH NUMBER
12530 HOME
12550 IF f$ = "" THEN HOME: GOTO 12590
12555 GOSUB 13000: GOTO 12600
12590 n = 0
12591 n = n+1: i = n
12592 INPUT "ENTER AMOUNT (-.99 WHEN DONE): "; x(i)
12594 IF x(i) = -.99 THEN i = i-1: n = n-1: GOTO 12600
12596 NORMAL: IF i = 100 THEN 12600
12599 GOTO 12591
12600 HOME: s(1) = 0: IF pf = 1 THEN PR#1: GOTO 12610
12602 IF key$ = CHR$(149) OR key$ = CHR$(157) THEN PR#1: pf = 2
12610 FOR i = 1 TO n
12620 s(1) = s(l)+x(i)
12630 NEXT i
12640 HOME
12645 PRINT: PRINT "FILE: "; f$: PRINT
12680 s(2) = 0: s(3) = 0
12690 FOR i = 1 TO n
12700 p = INT(x(i)/s(1)*100+.5)
12710 PRINT x(i, p, x$(i)
12720 s(2) = s(2)+p: s(3) = s(3)+1
12721 IF pf = 1 OR pf = 2 THEN 12730
12723 IF s(3) < 10 THEN 12730
12727 s(3) = 0
12730 NEXT i
12750 PRINT "----------", "-------"
12760 PRINT s(1), s(2) ; "*"
12790 PR#0: IF pf = 1 THEN 18190
12791 IF do$ = "1" THEN PRINT "PRESS ANY KEY TO CONTINUE"; : GET key$: GOTO 18190
12793 IF key$ = CHR$(155) OR key$ = CHR$(147) THEN GOSUB 14000
12800 GOTO 10
13000 d$ = CHR$(4)
13005 ONERR GOTO 9000
13010 PRINT d$; "OPEN "; CHR$(64); f$
13020 PRINT d$; "READ "; CHR$(64); f$
13030 INPUT ""; m$
13032 INPUT ""; n
13034 FOR i = 1 TO n
13036 INPUT ""; x$(i)
13038 INPUT ""; x(i)
13040 NEXT i: PRINT d$
13070 PRINT d$; "CLOSE "; CHR$(64); f$
13075 CLRERR
13080 RETURN
14010 IF f$ = "" THEN INPUT "NEW FILE: ENTER NAME OF FILE "; f$: GOTO 15000
14030 PRINT "TO STORE DATA TO: "; f$
14040 IF key$ = CHR$(155) OR key$ = CHR$(147) THEN 15000
14050 IF key$ = CHR$(158) OR key$ = CHR$(150) THEN f$ = "": GOTO 14010
14060 PRINT CHR$(7)+CHR$(7): GOTO 14010
15005 ONERR GOTO 9000
15010 d$ = CHR$(4)
15020 PRINT d$; "OPEN "; CHR$(64); f$
15030 PRINT d$; "WRITE "; CHR$(64); f$
15040 PRINT m$
15042 PRINT n
15044 FOR i = 1 TO n
15046 PRINT x$(i)
15048 PRINT x(i)
15050 NEXT i: PRINT d$
15080 PRINT d$; "CLOSE "; CHR$(64); f$
15085 CLRERR
15090 GOTO 10
18001 HOME
18015 n = 0
18020 INPUT "ENTER AMOUNT (-.99 WHEN DONE): "; x(i)
18030 IF x(i) = -.99 THEN 18190
18040 n = n+1: i = n
18050 GOTO 18020
18190 HOME
18200 c1 = 16: r1 = 12: r2 = 12: p1 = 3.1415926
18210 f7 = .75
18220 c9 = INT((c1+(1/f7)*r2)+l)
18230 r9 = INT((r1+f7*r2)+l)
18300 REM *DIM:G$() MUST BE R9,C9)
18410 t = 0
18420 FOR i = 1 TO n
18430 t = t+x(i)
18440 NEXT i
18450 FOR i = 1 TO n
18460 p(i) = x(i)/t
18470 NEXT i
18510 g$(r1, c1) = "*"
18520 REM *SET RIM*
18530 FOR i = 0 TO 2*p1 STEP p1/10
18540 r = f7*r2*SIN(i)
18550 c = (1/f7)*r2*COS(i)
18560 c = c+c1: r = r+r1
18565 IF c < 1 THEN c = 1
18570 g$(INT(r+.5), INT(c+.5)) = "*"
18580 NEXT i
18600 REM *DRAW PIE*
18610 t = 0
18620 FOR i = 1 TO n
18630 t = (p(i)*2*pl)+t
18640 FOR j = 1 TO 5
18650 r3 = j/5*r2
18660 r = r1+f7*r3*SIN(t)
18670 c = c1 + (l/f7)*r3*COS(t)
18671 IF c < 0 THEN c = 0
18680 g$(INT(r+.5), INT(c+.5)) = "*"
18685 NEXT j
18690 NEXT i
18710 FOR r = 1 TO r9
18720 FOR c = 1 TO c9
18725 cx = c
18726 IF cx > 31 THEN cx = 31
18727 IF cx < 1 THEN cx = 1
18730 VTAB r: HTAB cx: PRINT g$(r, c);
18740 NEXT c
18750 PRINT ;
18760 NEXT r
18770 IF pf = 1 AND n < 7 THEN PRINT CHR$(16)
18772 IF key$ = CHR$(149) OR key$ = CHR$(157) THEN VTAB 23: HTAB 1: PRINT: VTAB 24: PRINT: PRINT CHR$(16)
18778 PRINT
18790 IF key$ = CHR$(155) OR key$ = CHR$(147) THEN 14000
18800 IF key$ = CHR$(158) OR key$ = CHR$(150) THEN 10
18810 PRINT CHR$(7)+CHR$(7): GOTO 18780

Return to Top


DATA PACK (Adam).....1/$3.95 - 10/$37.50
RIBBON CART.....1/$5.50 - 3/$15.00
DISKS (Adam)......30/$35.95 - 10/$14.95
DAISY WHEEL (Adam) - Italic, Script, Elite, etc. 1/$5.50

ADAM COVERS - Set with logo for system......$18.95
ADAM DISK COVER - To match above......$7.99

64K MEMORY EXPANDER.......$69.95
TRACTOR FEED for Adam printer.....$79.95
PRINTER STAND - Front on/off switch......$19.95
POWER SUPPLY UNIT - To separate printer/use CPU alone.....$69.95
ADAM AIR CONDITIONER - Stop heat buildup with this super quiet computer fan. Will help eliminate the problem with the computer crashing (freeze).....$19.95
SERIAL/PARALLEL INTERFACE UNIT - This opens a whole new world for the Adam owner. Now you can connect a dot matrix hi/speed printer/use standard modem (300-1200 baud). Comes w/software used with SmartBASIC or CP/M etc. Serial or Parallel......$139.95
SPEECH SYNTHESIZER UNIT - SUPER TALK - Now add VOICE capabilities to Adam. Software included. $99.95
Disk Holder - Holds up to 50 disks-anti static.....$15.95
Monitor/TV Stand-360 rotation, up to 12.5 angle.....$22.95
Adam Monitor Cable.....$10.95
Star Micronics NX-10 Printer.....$289.95
Star Micronics NX-10 Ribbon....$6.95
PACKCOPY - Backup SmartBASIC, etc. .....$29.95
DIABLO - Mind Challenge - Graphic.....$19.95
BLACK GOLD - Look for oil. Survey-profits-fun.....$19.95
The STOCK MARKET GAME - Fun & educational.....$19.95
BOUNTY HUNTER - Text adventure.....$14.95
ENGLISH GRAMMAR BUILDER I - Jr. high school level tutor.....$19.95
VOCABULARY BUILDER I - Tutor/words that have appeared on SAT's..$19.95
MATH BUILDER I - Elementary/Jr. high tutor.....$19.95
ALGEBRA I - Tutor.............$19.95
EBU - SmartBASIC - Data Pack or Disk.....$21.95
HACKER'S GUIDE TO ADAM - Disk or DP.....$17.95
TurboLOAD - Revolutionary new product. Speeds up loading programs, a must for Adam owners. Also includes the FILE ORGANIZER.....$28.95
PaintMASTER - HI-Res graphic design system primarily written in Z80 machine language. Load or save your creation to either D or DP.....$23.95
MultiWRITE - The only 64 column word processor, no need for moving windows. What you type on the screen will be printed. On screen R & L justification, on screen centering and so much more.....$38.95
VIDEO TUNES - Compose, play, save music.....$34.95
AUTOAID - Enhances SmartBASIC. Generate new line numbers as you type. Defines function keys to be any command or character string & so much more.....$29.95
MULTI-CART BACKUP - Backup cartridges.....$19.95

S&H - $2.50 US     $4.50 CN      US $'s only     VISA/MC

Free catalog


 We stock what we sell



M.W. RUTH CO., Dept. S26
510 Rhode Island Ave.
Cherry Hill, NJ 08002

By joining our group you will receive our newsletter. Advance updating, evaluations on programs and hardware. Technical information, problem solving, and be entitled to share in our program exchange. Plus much more. Send $15.00 for membership to:

P.O. Box 3761
Cherry Hill, NJ 08034
(609) 667-2526


High Speed Digital data packs


We stock Loran Digital Data Packs. These are available to subscribers for $5.00 each, two for $9.00, or ten for $40.00. Foreign and Canadian orders include additional postage sufficient to cover additional shipping charges.




Sage Enterprises
Rt. 2, Box 211, Scrivner Rd.
Russellville, MO 65074

Return to Top

In addition to our other products we carry a growing portion of the CP/M Public Domain library in the ADAM CP/M format. While we have tested much of this software, we cannot guarantee that it is all bug free. However, most of this software has been around for some time and has gone through a number of revisions to eliminate any bugs that have appeared.

All prices are given in U.S. funds. Canadian orders should be in U.S. funds or equivalent. Orders to other foreign countries add $2 for each disk and $3 for each data pack to cover overseas shipping.


CPM 1 - ADVENTURE the original public domain game. Disk recommended. Disk $5, DDP $7.

CPM 2 - TINIDISK a version of Tiny Basic. Includes Star Trek. Disk $5, DDP $7.

CPM 3 - PILOT implementation of the PILOT language. Disk $5, DDP $7.
CPM 4 - POW2-text formatter. Disk $5, DDP $7.
CPM 5 - EBASIC package (5 disks or DDP's). Includes HELP files, EBASIC compilers, source code and OTHELLO game. Disk $25, DDP $35.
CPM 6 - EBASIC GAMES - requires CPM 5 above. Disk $5, DDP $7.
CPM 7 - EBASIC GAMES - requires CPM 5 above. Disk $5, DDP $7.
CPM 8 - EBASIC GAMES - requires CPM 5 above. Disk $5, DDP $7.
CPM 9 - EBASIC GAMES - requires CPM 5 above. Disk $5, DDP $7.
CPM 10 - MADAM7 - Modem7 for the ADAM and other utilities. Disk $5, DDP $7.

CPM 11 - ASSEMBLERS & DISASSEMBLERS (2 disks or DDP's) Disk $10, DDP $11.

Copyright 1986 Sage Enterprises - All Rights Reserved

UNREAL UTILITIES is a menu driven set of utilities that will allow you to read and edit directory information for SmartWriter and Smartbasic files, delete and remove entries that will free up wasted directory space, fix corrupted directories, change file names and their characteristics and more; format disks; edit and dump blocks on disk or data pack; compare two copies of media to insure that they are identical; move blocks from one location to another on a disk or data pack; and RECOVER files and programs from a disk or data pack even if it has been INITed in SmartBASIC.

These utilities are especially useful to anyone involved in the development of software for the ADAM. U.S. and Canadian price - $36.95 US funds. Foreign price - $40.95.

PL 1 - Checkbook balancer, mailing list (prints labels), graphics and sound demos, picture drawing, grade calculations, envelope addresser.
PL 2 - Screen and text color changer, note player, sprite demo, filing system, games, statistics, grade point average, timer, and graphics demos.
PL 3 - Serpent, battleship, joinfour, checkers games; sprite editor, graphics, educational programs, tic tac toe, menu program, and an event scheduler.
PL 4 - Dungeons and Dragons game (elaborate), EVIL3 game, football game forcaster and 8 Ball fortune teller. A disk drive is required for D & D game.

PL 1, PL 2. and PL 3 are available on either disk or data pack for $9.95 each to U.S. and Canadian customers. Foreign customers add $2 per disk or $3 per data pack. PL 4 is available for $5.00 on disk and $7.00 on data pack to U.S. and Canadian customers. Foreign customers add $2 per disk or $3 per data pack. Send U.S. funds or Canadian equivalent only.

Copyright 1985 Sage Enterprises All Rights Reserved
CONVERT allows you to copy non-ADAM CP/M disks to ADAM CP/M format, giving you access to data and programs that may not be available in ADAM CP/M format.

CONVERT accesses: Zenith 100 CPM-85 SSDD Format Disks IBM PC CPM-86 SSDD Format Disks TRS80 CPM+ SSDD Format Disks. System Requirements: ADAM with at least one digital data drive and one ADAM disk drive, plus ADAM CP/M 2.2 and SmartBASIC. CONVERT reads the three disk formats listed above and converts them to the ADAM format. In order for a CP/M program to run on the ADAM, it must be CP/M 80 version 2.2 compatible and must allow for configuration to the ADAM system. CP/M 80 version 2.2 software is available on the three disk formats listed above. To avoid confusion we generally recommend that such software be obtained on the Zenith format. Always make sure that the software you obtain to use on your ADAM is CP/M 80 version 2.2 or it will not run on your ADAM. Some examples of software that have been CONVERTed are Microsoft Basic, Turbo Pascal, ASCOM, and WordStar. If you are considering buying CONVERT make sure you have a good understanding of the CP/M operating system. If you only have a need to CONVERT a few programs to ADAM format you may want to consider our software conversion service listed elsewhere in this catalog. U.S. and Canadian price - $36.95 US funds. Foreign price - $40.95 US funds.

All of the products on this page may be ordered from:

Sage Enterprises
Rt. 2, Box 211, Scrivner Rd.
Russellville, MO 65704

Return to Top

* 110 PAGES *
* JUST 14.95 POST PD *
If you own an ADAM Computer, you need the all new 2nd Edition ADAM Resource Directory. We have worked months collecting a vast amount of info for ADAM users & have put it together in a practical, attractive, affordable package. If you don't have this directory you're not getting all you can out of your ADAM! Read below for details on what info we include then rush to the post office with your order.

Software Section - 400 pieces listed and described.
Software by category.
CP/M Software Info.
Public domain software sources.
Hardware section - over 60 listings.
Publication section - 50 ADAM books listed / 12 ADAM Newsletters/Over 70 computer magazine listings.Over 30 CP/M books listed/21 Z-80 books listed.
ADAM Retailers - Over 110 companies listed that carry Adam products/36 listings of mail-order companies that carry general computer products.
User group section - Over 100 groups listed around the world.
ADAM user section - Several hundred Adam users listed that want to be in contact with other users.
Service information - All you need to know about caring for Adam/Complete list of Service Centers.
Online section - Tons of info to use your modem/Adam BBS'/Compuserve/info databases & services/online publications/general BBS listings.
General tip section - 8 full pages of valuable info for you.
Hacker section - Advanced info section/Comprehensive POKE & PEEK charts/Adam System Calls/ Adam/Apple Equivelents/Text color table/Hex-Decimal Conversions/Sprite info & more.
The ADAM Shopper Section - 24 pages of nothing but ADAM ads from the leading ADAM companies. You'll find everything here!

Send $14.95 today - Check or Money Order (US Funds Only)

P.O. BOX 90-E
(All orders are uusally shipped in 24-48 hours. We ship 3rd class US mail. If you
want yours sent 1st class priority, add $2 to your order.