Sponsors

FacebookTwitterGoogle Bookmarks

the available Amiga products in one place, with longer descriptions and cross referencing. As a test, we published the Spring Product Guide to see what effort would be required and how our readers would react. The results were excellent. The Spring Guide has been selling extremely well, and the reaction from our readers is very enthusiastic. With the new schedule of Guides, we will be able to deliver better information to the Amiga community on what is available for the Amiga and how they can best use their machines. We hope this information will not only create a more informed Amiga community, but increase both Amiga computer and third-party sales of hardware and software. Amazing Computing, volume 4.6 This issue of AC contains a large supplement of technical articles. AC has compiled a wide variety of articles, from AmigaBASIC to Diskless Compiling.

Click image to download PDF

Document sans nom AMIGA Volume 4 Number 6 US -95 Canada .95 COMPUTING Your Original AMIGA Monthly Resource The AMIGA does it all AMIGA VIDEO PREPARATION AMAZING Reviews: KindWords Nag Plus 3.0 IsiS ‘U®.
BU A look at PageStream r !T- Arexx JOINS IT ALL PageStream Plus: <g> Diskless Compiling Exploring AMIGA Disk Structures Utilizing the 68881 math coprocessor Part II UPS Units Part II Using Requesters in AmigaBASIC AMAZING REVIEW: The CMI Processor Accelerator «~ii Free/Fisk Co/izction R&aoFs 12101 Don't limit your potential! Experience excellence!, a word processor designed for your Amiga, with 250 available fonts, a SpeU-As-You-Type 90,000+ word Dictionary, Grammatical/Style Checker, Thesaurus, Index and Table of Contents generator, Headers, Footers and Footnotes! Sail through PostScript
output, True WYSIWYG, automatic Hyphenation, Math, beautiful resizable Color Graphics, flexible Mail Merge, Columns and an easy-to-use Macro- Language making complete actions a breeze! The fastest word processor for your Amiga is the only one you'll ever need! Tvuly a "Masterpiece" of excellence!
12798 Forest Hill Boulevard, Suite 202 West Palm Beach, Florida 33414 407-790-0770 Fax 407-790-1341 Sec your local dealer for an excellence! Brochure.
Dealers and Distributors Call 1-800-327-8724 We use KAO Disks!
Amiga is a registered trademark of Commodore Business Machines • EbstScript is a registered trademark of Adobe Systems, Inc. * excellence! Is a registered trademark of Micro-Systems Software. Inc, / From \ f The Makers \ mf ol Don Bluth’s Dragon's lair™ / Come TWO Exciting new Games: / Vortex from the author of C64 ZOOM™ ' and Datastorm from the author of Sword of Sodan Now available through your Local Amiga™ Dealer Amiga is d trademark ol Commodore-Amnga Inc Dragon's Lair and Blutn Group Ltd are trademarks owned Dy and used , L under I t.onse from Bluth Group. Ltd 1983.1986 4 1987 f ^ Bluth
Group. Ltd Character Desgns i983DonB!ulh A All rights reserved Zoom and Sword of Sodan are trademarks ol W \ Discovery Software Intl.
[Ero8uct(6nsN,lnc AMAZING PROGRAMMING AMAZING FEATURES Adventures in Arexx by Steve Gillmor Enter the world of multitasking with a powerful super-application At Your Request John F. Weiderhim Design your own requesters in AmigaBASIC.
Exploring Amiga Disk Structures by David Martin A look at the heart of the Amiga: AmigaDOS.
C Notes from the C Group by Stephen Kemp Steve discusses some ways to avoid problems when passing parameters between functions.
Svt • 2000A Robot and Amiga Interface Courtesy of Datel Computers 3430 E. Tropicana Ave.*67 Las Vegas, NV 89121 Diskless Compile in C by Chuck Raudonis Make development easy with COMPILE, a full- featured programmer’s workbench.
(UPS), Part H by Steve Bender Steve continues his discussion on the technical aspects and details of various types of UPS units.
Programming the ‘881 Part n by Read Predmore A discussion on how to calculate Mandelbrot & Julia sets.
Amiga Video: Ninety Percent Preparation by Otto Focus Prepare your video for summertime fun Your Original AMIGA Monthly Resource
• TABLE OF CONTENTS• Volume 4, Number 6 June 1989 2v.v ,.v
.-.ADddw.:-./. AMAZING REVIEWS AMAZING COLUMNS NAG Review by
Marion Deland An electronic appointment calendar with a sense
of humor.
Digi-View Gold - It’s Gold!
By Bruce Jordan A review of NewTek’s video digitizing system.
KindWords 2.0 review by Marion Deland High-quality fonts plus graphics, at the expense of speed.
New Products & Other Neat Stuff Add another dimension to your Amiga with Design 3D, Escape from the abandoned planet Atrax, and more!
Bug Bytes by John Steiner A look at some problems with the A2090 controller card and high-resolution & more.
PD Serendipity by C. W. Flatte
C. W. covers Fred Fish disks 201-210.
PageStream Part I by Barney Schwartz A look at Soft-Logik’s full-featured document processor.
Roomers by The Bandito The Bandito look at Commodore's future and the end of the Apple II.
Ray Tracing in AmigaBASIC AMAZING DEPARTMENTS From the Editor by Michael Morrison AC's Technical Editor looks at Abacus's ray tracing book CMI Accelerator Processor review Letters Index of Advertisers/Reader Service Card by Rich J. Grace A low cost way to boost your Amiga's performance Public Domain Software Catalog Try the best backup software anywhere for 5 bucks.
EZ-BACKUP, the only self managing backup software, will solve your backup problems forever. Wc'rc so confident you'll agree that, for a limited time only, we'll send you a working copy of EZ-BACKUP (limited only by the number files it handles) for only five dollars. To receive your demonstration disk and a discount certificate mail S5-00, your name, and your address to: EZ-BACKUP DEMO DEAL, 10668 ELLEN ST., EL MONTE, CA 91731 Publisher: Assistant Publisher: Circulation Manager: Asst. Circulation: Asst. Circulation: Corporate Trainer: Traffic Manager: Joyce Hicks Robert J. Hicks Doris Gamble
Traci Desmarais Donna Viveiros Virginia Terry Hicks Robert Gamble International Coordinator: Marie A. Raymond Marketing Manager: Ernest P. Viveiros Sr.
EDITORIAL Managing Editor: Editor: Hardware Editor: Submissions Editor: Technical Editor: Music & Sound Editor: Assistant Editor: Copy Editor: Copy Editor: Art Director: Photographer: Illustrator: Production Manager: Don Hicks Ernest P.Viveiros Jr.
Ernest P. Viveiros Sr.
Elizabeth Fedorzyn
J. Michael Morrison Richard Rae Michael Creeden Atmee Duarte Jan
Hammond William Fries Paul Michael Brian Fox Donna M. Garant
ADVERTIStNG SALES EZ-Backup Advertising Manager: Alicia
Tondreau Marketing Assistant: Melissa J, Bernier
1-508-678-4200 FAX 1-508-675-6002 With EZ-Backup you use the
same set o( disks (or every incremental back up. Only one full
back up required- Everl Space on the disks is managed by
deleting obsolete archive files and allowing you lo save from
0-255 versions of each file. Your files are saved-even if you
have completely deleted them from the hard drive!
EZ-Backup comes with an optional warning screen- We all tend to put off doing backups. EZ-Backup $ warning screen reminds you.
If you would rather not be reminded-you have the option to shut the warning screen off EZ-Backup prevents you from damaging valuable data- By checking the volume label. EZ Backup keeps you from writing over important files EZ-Backup uses Standard Amiga format- Piles are archived in standard Amiga format and work with all standard utilities EZ-Backup provides easy recovery of individual files— A simple lo use mouse-onented program allows you to recover Individual files Works with all Amlga-DOS compatible hard drives.
(Amiga-DOS version 1.2 or higher)
* Provides archive-bit utilities * Not copy protected
* Multi-iasking * Complete manual with examples
* Upgrades provided free tor Ihe lirsl six monids after program
purchase I
* Free telephone support!
Not more expensive just the best ¦ .95 - from: EZ-SOFT or as Amiga Deafer near you.
10668 F.llcn Street El Monte, CA 91731
(818) 448-0779 Dealer Inquires Welcome SPECIAL THANKS TO: Buddy
Terrell & Byrd Press Bob at Riverside Art, Ltd.
Swansea One Hour Photo Amazing Computing™ (ISSN 0886-9480) is published monthly by PiM Publications, Inc., Currant Road. P.O. Box 869, Fall River, MA 02722-0869.
Subscriptions in the U.S., 12 issues for 924.00; in Canada & Mexico surface, S36.00; foreign surface lor 944.00. Second-Class Postage paid at Fall River, MA 02722 and additional malting offices.
POSTMASTER; Send address changes to PiM Publications Inc., P.O. Box 869, Fall River, MA 02722-0869. Printed inthe
U. S.A. Copyright© Nov. 1988 by PiM Publications, Inc. All rights
reserved, First Class or Air Mail rales available upon
request. PiM Publications, Inc. maintains Ihe right to refuse
any advertis¬ ing.
Pirn Publications Inc. is not obligated to return unsolicited materials. Ail requested returns must be received with a Self Addressed Stamped Mailer.
Send article submissions in both manuscript and disk format to the Co-Editor. Requests lor Author's Guides should be directed to the address listed above.
AMIGA™ is a registered trademark of Commodore-Amiga, Inc. From The Managing Editor A changing of the guard Most of our long-time readers are aware of tire growth of Amazing Computing™, In past issues I have reminisced about tire small room and then the basement we started producing AC in over three years ago. It is still hard to believe we have been able to accomplish so much coverage of the Amiga, by beginning from a single desk and phone. I have returned to this early period in our history to acknowledge the efforts of an AC pioneer.
Although Ernest P. Viveiros Jr. Did not assist in our first issue's layout, he was there (in our kitchen) when tire first shipments of AC were made to our new Amazing Dealers. His first attempts at art and layout began with our second issue.
By the third issue, he was a distinctive part of die Amazing staff.
Whether shipping an issue, helping an author, or completing a difficult article, Ernest has always attempted to deliver exacdy what is needed. His tasks have ranged from layout design to submis¬ sions, and he lias handled each with a distinctive brand of common sense and care. For the past year, he has coordi¬ nated all our AC authors, as well as the contents for each issue.
Ernest's knowledge of the computing tools available and his constant search for better ways to do our job has made us a more efficient operation. “Don, I think we should buy..." has been both his herald to drive us onward and his humor to maintain our balance. If left alone, Ernest would probably have purchased just about every piece of hardware and software available. Elis curiosity' of new systems and new programs has remained an asset.
Ernest has now decided to serve us all in another capacity. He is joining the U.S. Navy, and this is the last issue he will be putting to press. Although we will miss him, it is easy to see the excitement his new career will offer him. Ernest's actual plans regarding his Navy' service and what he will do after basic training are still not determined. One thing is certain however: the Navy will get him up a lot earlier than we ever could.
To Ernest, from all tire staff at Amazing, good luck. And from me, thank you for all your help and assistance. You have brought both AC and our coverage of the Amiga into areas we would not have been able to do alone.
Enter the new guard This month also adds a new' Technical Editor to Amazing's masthead. Mr. Mike Morrison, a founder of Micro Momentum, Inc. (the folks who are working on die portable Amiga), has been added to our staff as new Technical Editor to help answer more clearly die many questions we receive from readers each mondr.
Mike brings his love of die Amiga and his insight into its development to the pages of Amazing Computing. Mike is determined to push the understanding of Amiga principles, as well as the possibili¬ ties for the Amiga, to new heights through AC. A lofty and expansive task, still Mr. Morrison began his work at AC saying, “I may not know die answer myself, but I will know' where to find it.” Mike’s decision to join our expanding group came w'ithin hours of die birth of his first child, a ten-pound boy named Alexx. We are not sure whether it was the dirill of die Amiga, or die fear of Alexx’s
grocery bills that brought him, but we are pleased he is here.
Ms, Elizabedi Fedorzyn has accepted the mantle of submissions editor. She will coordinate any submissions and all author correspondence. This effort wdll allow us to offer a very close connection w'idi each of our audiors as we expand die coverage in both AC and its sister publication, AC’s Guide to the Commo¬ dore Amiga.
AC's Guide to the Commodore AMIGA?
That's right. Starting in September, AC will publish AC’s Guide three times a year—Fall, Winter, and Spring. The Spring Guide will come as an added issue to our regular subscribers. The Fall and Winter Guides will be available as an upgrade to your current subscription or through a reservadon plan. (Please see page 73 for more information.)
We have long seen the need for a quality' product guide which placed all die available Amiga products in one place, with longer descriptions and cross referencing. As a test, we published the Spring Product Guide to see what effort would be required and how our readers would react. The results wrere excellent.
The Spring Guide has been selling extremely well, and the reaction from our readers is very enthusiastic. Widi die new' schedule of Guides, we will be able to deliver better information to die Amiga community' on what is available for the Amiga and how they can best use dieir machines. We hope this information will not only create a more informed Amiga community, but increase both Amiga computer and third-party sales of hardware and software.
Amazing Computing, volume 4.6 This issue of AC contains a large supplement of technical articles. AC has compiled a wide variety of articles, from AmigaBASIC to Diskless Compiling.
When w,re originally announced our intentions for this issue, w'e were flooded widi responses. We received too many articles to fit in this one issue, so you w’ill be seeing diem in future issues of AC.
AC began its career providing as much technical information as it could to readers. In die early days of the Amiga, the Amiga community was comprised mainly of Amiga programmers and com¬ puter enthusiasts. As the Amiga grew, so did AC. And while we never stopped printing programs, hardware projects, or technical issues, we continued to increase the size of AC to include more general subjects for the expanding Amiga Community'.
AC has maintained this careful balance of general information and technical .Amiga information to provide the Amiga public widi access to die entire Amiga experi¬ ence. Each Amiga user has specific ideas regarding what dieir computer should do. It is in this spirit that we provide an open forum of increasing information.
We respect our readership and, thus, try' to show them more of the Amiga and entice them to do more.
AC has published more articles, more pages, and more information for the Amiga than any otiier periodical. We are extremely proud of this heritage and will keep doing what we know' best.
Sincerely Don Hicks Managing Editor Got The Picture...Get The Works!
Picture this: all the productivity applications you need in one easy to use “Starter Kit". Give your Amiga power times five. Give it The Works!
Platinum Edition.
12798 Forest Hill Blvd., Suite 202 West Palm Beach, Florida 33414 407-790-0770 Fax 407-790 1341 PLATINUM EDITION d Programs In One Amiga Computer Amazing Mail {The opinions expressed in thefollowing letters are not necessarily those of Amazing Compu.ting.ACalso reserves the right to edit letters to meet our space requirements.—Ed.I Dear AC: Congratulations on a knock-your-mouse- buttons-off Spring '89 Product Guide*. 1 will most certainly be turning through die pages again and again. Can you stand the work to make anodier one?
I would appreciate it if you could mail me a copy of your Writer’s Guide. I am interested in writing some articles for you.
Thanks!
Sincerely, Brian C. Berg Tempe, Arizona We’re glad you like it! Tire product guide will become a permanent publication called AC's Guide to the Amiga. It will be printed in the fall, winter and spring, and paid subscribers will receive the spring issue free. (MM—Tech Ed) Dear AC: The Amiga is (as all of us know) clearly the a superior machine. Any “Amigan” will surely tell you it is the most advanced personal computer ever to come down the pike. So why is it plagued with funky, third rate software?
Where is Aldus Pagemaker, Ventura Publisher, and AutoCAD? With its graphics capabilities, the Amiga could handle programs like that lietter than any other machine on die market. Why is it that Word Perfect Corp. (God bless ’em) is the only “major” software company to develop for the Amiga?
Part of die reason, in my opinion, is that die Amiga is simply not fashionable. It is the wrong computer for its time. It is not a computer for the eighties, but a computer for the sixties! Think about it.
The 1960’s was a time of great artistic and musical creativity. It was a time of excitement and a time when that which was revolutionary was welcomed and expected. The Amiga is all of these things. It is colorful, musical, exciting, and most of all, revolutionary. In short, it is die perfect computer for a hippie. I suspect that Jay Miner, the guiding spirit of the /Amiga, is an old hippie at heart (that's a compliment Jay!) Who just happens to be a techno-wiz. Plave you noticed, by die way, that Deluxe Paint is written by Dan Silva, who wears litde wire-rim glasses and lives in the San
Fransisco Bay Area. Hmmmmmm... If, through some twist of time, the computer revolution had happened in, say the 1961 instead of 1981, things might have turned out quite differendy for the Amiga.
But diis, alas, is not the time of the hippie but die time of die yuppie. It is a time of mediocrity, not creativity. It is a time when the gray-suit is king and can dictate his tastes to us. He likes money, dull music (including dull rock and roll), more money, uninspired art, spreadsheets, mediocre politicians, still more money, and he doesn’t like Amigas. He doesn’t like them because they really are best suited for creating art and music and he sees diem as frivolous...a waste of time... can’t make money at it. He doesn't particularly like the people who like Amigas either. They are
artists, musicians, and (yuk!)
Programmers too. He thinks there is soinediing “squirrelly" about them...a bunch of flakes and crackpots. Deep down, though, he doesn't like diem because diey are creative while he is dull and unimaginative. They make him feel inferior and he likes that least of all.
So here we have the gray-suits at Commodore who, by some fluke, got hold of die Amiga. It is a machine they don't like or understand made by a bunch of people they don't like or understand (who they fired), that diey have to try and sell to another bunch of people who diey don’t like or understand. How do we know diey don’t like it? Becatise they keep trying to turn it into a Frankenstein's Monster full of TBM clone stuff. Can you picture Apple doing that with die Macintosh? If 1 were an armchair shrink I might even go as far as to say that the)' resent and misunderstand the Amiga so much that
they don’t even like to advertise it. They are ashamed of it and wish it was an IBM! After all, an IBM is a much more “respectable” machine.
But they are stuck with it (and we with them), and we can only hope that they can someday leam to love the Amiga as we do (yeah, right!). Until diat time, all I can say is Peace! Love! And happiness.... Gregory LeVasseur San Fransisco, CA Dear AC: While I realize your Amazing Mail column is not normally used for publicizing bulletin boards, I feel this case warrants an exception.
For whatever reason, free, privately owned BBSs tend to come and go very quickly, most likely due to a combination of the hard work and die cost involved in keeping diem online. I could name only a dozen non-pay boards that I feel are both run professionally and represent a permanent installation.
Many boards pick a familiar theme and customize dieir menus and formats appropriately. I won’t go into the lengdiy details dtai would be needed to explain fully my recommendation of “The Amiga Sharewarer's BBS”. The sysop, Bill Beogelein. Is trying to make a single location the headquarters for contacting shareware authors about dieir software, as well as making the very (continued) .
JBttlliantf Lattice Tools & Libraries We are the company that writes the language and the tools. So who could know more about the utilities you need to maximize productivity?
Lattice 5.0 Cross Compiler All the power and facilities of the Lattice Amiga DOS 5.0 compiler in a cross-compiler MS-DOS and OS/2 host.
Includes our full screen cross debugger. 0.
Lattice C++ Object Oriented C++ Programming for the Amiga.
Provides object definitions for AmigaDOS, EXEC and Intuition. S300.
Lattice Compiler Companion Collection of UNIX-like utilities that make your programming environment more productive.
(Included in Lattice 5.0.) 0.
DBC III Library Amiga programming library that provides programming interface into dBASE III compatible files. 0.
Communication Library New Amiga programming library that supports modem interfaces for XMODEM, YMODEM, KERMIT and ASCII protocols. 0.
PANEL Library Amiga programming library that supports windows graphics applications. 5.
C Programming Seminar Learn C programming from Lattice experts. Four day seminar in Chicago. 5.
F - William Mwfe author of Arex "LightningdFast!
- Reicliart nn Wolhhcild Silent Software, Inc. "Blows avrfiv all
the o A - Rote* Bern/hi I LMR Creations Lattice AmigaDOS CpQis
getting Iqrc of praise. And not just because of the latest
benchmarks whfch prov^Lattice C 5.0 is the best compileikby
eveiy measure.
For instance, MichJtel Befenstein cal Uzun simply calls thisWtaf programming environment "...the best.
'Wonderful,1’ while Ro| Tom Dolan felt the same aboutj2odePRow, our new Source Levi Debugger. Support for botht and Assembly language, plus multi tasking debugging make it "/.the best 1 have sepn or used!!!!
And our new Global Optimizer caused StevaTibbett, a "VERY happy customer," to say, "WOW. This is outstanding!" And Tomas Rokicki of Radical Eye Software to exclaim .Global Optimizer, inline subroutines and extensive libraries-make whole new levels of performance possible."
About our manual? "Excellent!" And "...extra fine.
About our BBS for unlimited technical support? "Fantastic!
And about our competition? Eric Dyke of inom Software says "Manx, eat your heart out! Lattice is the right choice!
Call any of our world-wide distributors, or call us at 1-800- 444-4309 or (312) 916-1600. Fax #(312) 916-1190, TELEX 532253.
Lattice Professional Programming Tools Since 1981 2500 S. Highland Ave., Lombard, IL 60148 latest versions of their work available under one roof. It is a format that is long overdue. Nice job. Bill.
Give them a call at 313-473-2020. If you use PC Pursuit it’s a local call via node “MIDET”.
Sincerely, Pete Raddatz Detroit, MI It’s people like Bill who help keep the Amiga community filled with easily available information. (MM— Tech Eel) Dear AC: Here is a small tip that I hope you will be able to put in your magazine.
On the Amiga 500 die joystick/mouse ports are at the rear and impossible to see to plug in joysticks, mouses or dongles, A cheap fix for this is to purchase a joystick port extender (Radio Shack and otiier electronic stores sell them). Simply leave the extension plugged in and route the cord to an easy spot to reach on your desk and when you have to plug something in, all you have to do is plug it into the extension, instead of fumbling around the back of the computer; thus eliminating damage to die ports or connectors.
Yours Sincerely, Stuart Attwood Canada Dear AC: In reference to Amazing Computing Vo!
4 No. 2 Crunchy Frog. A nice article, but one error in die listing on page 102, right hand column, about 15 lines down: struct Window *window_ptr =....... The asterisk was omitted from your listing.
Also, in reference to Amazing Letters, the ELSE bug, page 8. This is more exacdy an ELSE .. END IF bug, and isn’t hard to correct. It results from accidently leaving spaces behind the IF of the END IF; such spaces should not bother AmigaBASIC, but they do.
Simple program example: FOR j=l TO 10 IF j MOD 2 = 0 THEN PRINT j;” is even.” END IF (see note below) NEXT j Deliberately leave a few spaces at the end of the END IF line. No problem when you run. Next, just before the END IF line, add: ELSE PRINT j;" is odd.” Oops: die computer beeps and comes up with die error requestor. Note that die orange rectangle surrounds tile extra spaces you typed.
Click on OK and delete die spaces, using either the backspace or the delete key.
Now your program will run.
It's annoying, but not crippling. The ELSE statement is too useful to abandon just because of this irksome anomaly.
Jim Butterfield Toronto, Canada We recieved several letteispointing out the error in the Crunchy Frog program.
Thanks. Also, thank you for helping to clear up the ELSE .. END IF bug ill AmigaBASIC. (MM— Tech Ed) To Whom it may concern: Although I don’t own an Amiga, I have found your magazine to be one of die most thorough of all the Amiga magazines on die shelf. As an Atari ST owner, I haven’t always found the Bandito’s comments to be especially useful, hut overall, I think his/her column is a definite plus for your magazine.
Keep up die good work, Gordon Meyer Dear AC: I wish to relate a pleasant experience that I have received from one of your advertisers.
I purchased an Expansion Technologies, Escort 32 Meg Hard Drive for my A1000 which attaches to the Buss diat already had 2Megs connected. The only alteration that 1 had to have done was the PAL ground fix.
Since its intallation widi WB 1.3 and FFS, my system is flying. The technical assistance from Expansion Technologies is excellent and die quality of die product is top notch... Sincerely, Bruce Donally Brighton, NLA.
Dear AC: 1 would first like to say that you guys do a fine job. I hope you keep up the good work and continue publishing this valuable resource. I have yet to receive an issue of Amazing Computing that didn't keep me busy tiying out the new hints, programs and tricks. By die way, i like your new title.
1 would now like to announce my BBS so you can put it in your BBS list that you publish in your next product guide (1 can't wait!)
The Guru BBS
(414) 582-7448 9600 baud I am not hoping for any intercontinental
callers but I just want Wisconsin Amiga users to know that
there is one more Amiga BBS that they can add to their
short list.
Sincerely, Erik Meitner Winneconne, WI (continued) HardFtame/2ooo The Super-Speed, SCSI Hard Disk Interface for the Amiga?2000 How fast is fast? HardFrame/2000 transfers data at Amiga bus speeds! It's actually faster than the hard disk mechanism itself! And even
• AutoBoots AmigaDOS 1.3 (Price Includes HardFrame Eprom!)
• Directly Boots the New Fast-File System!
(Doesn't Need Old FS!)
• Auto-mounts All Hard Disk Partitions (no Mount List Required!)
• Designed-in,Ultra Strong, Multitasking Performance
• High Quality Metal Frame for Stable, On-Card, Hard Disk
Mounting
• Power Cabling Directly from Card to Disk
• 50-pin Cable Included
• Supports up to seven SCSI hard disks of any size more important
in the Amiga's multitasking environment, HardFrame/ 2000 has
extremely efficient DMA circuitry to get on and off the bus in
almost no time at all: 280ns to get on; 200ns to get off. And
it's true, dedicated DMA, too! HardFrame/2000 autoboots and
automounts di¬ rectly into the AmigaDOS™ 1.3 Fast File System
(old file system parti¬ tions are not needed!). The core of any
DMA SCSI interface is in its SCSI protocol chip and DMA chip.
MicroBotics has chosen the new, high performance Adaptec
AIC-6250 SCSI chip, capable of up to 5 megabytes per second raw
transfer speed, and the Signetics 68430 DMA chip running at
12.5 megahertz. Then we added additional FIFO buffering and
enabled 16-bit wide data transfers for maximum throughput. The
sophisticated design of HardFrame/2000 provides for automatic
SCSI arbitration, selection and reselection. The hardware
supports either synchronous or asynchronous data transfer,
Hard¬ Frame/2000 can function as either tire SCSI bus initiator
or the target and can reside in a multiple master environment.
Physically, Hard¬ Frame/2000 is optimally flexible: the
compact, half-size card comes at¬ tached to a full length,
plated aluminum frame. The frame has mount¬ ing holes
positioned to accept standard, 3.5" SCSI hard disk units such
as those manufactured by MiniScribe, Seagate, Rodime, and
others (hard disk mechanisms must be supplied by the user or
his dealer as a separate purchase item). Alternatively, you can
cable-connect to a SCSI drive mounted in your Amiga's disk bay
or in an external chassis. As many as seven hard disks may be
connected to a single HardFrame/ New!
8-UP! (DIP) FastRAM Another great memory board from MicroBot¬ ics, 8-UP! (DIP) is the "brother" of the original 8-UP!
(which uses SIMMs and PopSIMMs to fill its memo¬ ry space). 8-UP! (DIP) uses conventional 1 megabit RAM chips in standard sockets to provide your Amiga 2000 with 2, 4, 6, or 8 megabytes of autocon- figuring FastRAM! 8-UP! (DIP) is a super efficient CMOS design for lowpower consumption and high reliability. Suggested list price, 9 (Ok installed)
2000. There is no size limit on each disk. HardFrame/2000
includes a 50-pin SCSI cable and header connectors for
either 50-pin or 25-pin cable connection. Also included is
a current tap to power frame- mounted drives directly from
the slot itself. HardFrame/2000 comes complete with driver,
installation, and diagnostic software.
Available NOW! Suggested list price, S329 (lmrci disk not included) Frameless version: S299.00, See your Amiga Dealer.
The HardFrame/2000 photo shows the product with a MiniScribe twenty megabyte hard disk installed. Hard disks are nofincluded in the purchase price of HardFrame. Note that if placed in the first slot.
R--- Join MicroBotics I ONLINE TECHNICAL SUPPORT I I CONFERENCE ON BIX - 1 (The Byte Information Exchange) " | -call 1-800-227-2983 | ^for BIX membership information!
HardFrame uses only one slot even w:tb a disk attached.
MicroBotics,Inc.
Great Products Since the Amiga Was Born!
811 Alpha Drive,Suite 335, Richardson, Texas 75081 (214) 437-5330 Tel! Your dealer he can quick-order from MicroBotics directly -no minimum quantity -show him this ad!
"Amiga- is a registered trademark otCommodore-Amiga. "HaroFrame/2000", "8-UP!", "PopSimm", are trademarks of MicroBotics, Inc. Dear Sirs: Ever since I purchased my first computer, a PET, in 1989 I have been a dedicated Commodore user. At the moment I operate INFOMATIQUE! An .Amiga based BBS. To die best of my knowledge INFOMATIQUE! Was, with die exception of Commodore's developers BBS, the first Amiga based BBS in Europe. It was certainly the first in the world to use Sidecar (I had Sidecar a long time before it reached Non America).
Right from die start I have used BBS-PC!
And I have been very happy with it but I am now beginning to feel a bit restricted by this software and I am, therefore, interested in finding new software. I have a particular interest in setting up a multi-user system is there any suitable software/hardware available or in the pipeline. All infonnation from readers and software developers would be appreciated.
There are only a few bulletin boards in this country and as a sysop I feel somewhat isolated so I would really like to make contact with other sysops throughout die w'orld so that we may exchange ideas etc. Your publication is one of die best available keep up the good work.
Regards Liam Murphy IRELAND FAX 423123 PHONE 423055 BULLETIN BO.ARD 764942 Amiga Users: 1 have been an Amiga owner for the last year and a half, I originally upgraded from an 8-bit Atari 130XE, After purchasing die Amiga, I was thrilled to hear that Word Perfect gave support to the Amiga not with ONE program but TWO. Those programs are Word Perfect 4.1 and Library. I was thrilled with pride, and my heart leaped, that Word Perfect Corp. decided to support the Amiga, it gave me a sense of security' knowing that an IBM giant would support die Amiga. Word Perfect gives Amiga a step into the
business market, it was the first major company to come in and support die Amiga.
Hopefully odier corporations will follow suit like: Microsoft, Borland, and Ashton Tate.
Word Perfect gives the Amiga some of die recognition it whole heartedly deserves, With the continued sales of both Word Perfect and Library, a customer representative from Word Perfect told me Plan Perfect and Word Perfect 6.0 would be die future planned releases on the Amiga platform! That is not a misprint, that is not a misprint, six point oh, on die Amiga before the IBM version!
Again my heart leaped for joy, Amiga would be even further recognized as a more “serious" computer with the coming event of Word Perfect 6.0. The Amiga will be die developing platform for sLx point oh. With true “what you see is what you get" (wysiwyg), even with five point oh on the IBM you would still need to use page preview or a Hercules Graphics Card with Ram Font.
The most important aspect was the fact diat Word Perfect would have had six point oh on die Amiga first. This sadly, is no longer the case. According to another representative who I spoke with today, Word Perfect Corp. has decided to “temporarily" halt Research and Development for Plan Perfect and Word Perfect 6.0. According to him this is due to the slow down in sales of Word Perfect and Library'.
Amiga Users far and wide, my point is not to tell you to immediately go out and purchase Word Perfect, rather my point is that we should rally together and send in letters to Word Perfect as a campaign to show that diere are many users out here who wotdd be willing to PURCHASE Word Perfect 6.0 for the Amiga as soon as it is available.
I also suspect that another reason for the recent halt in “development” is due to piracy. Piracy is a parr of all computers form 8 bits to 16 bits, that is one of the main reason why the support for “OTHER" computer versions has died.
As a new Amiga owner I feared that Amiga was following in the same path, but thankfully for the release of Library, my fears were allayed. Now, my fears are back. As I have said, Word Perfect representatives at Ami Expo in New York and also in various computer shows confirmed that there would be Word Perfect 6.0 and Plan Perfect out for the Amiga. If we could all do a ‘write in compaign’, I’m sure that Word Perfect would take notice. It doesn't have to be anything elaborate. Just a simple note staling that y'ou are an Amiga user and would be interrested in purchasing Word Perfect 6.0 when it
becomes available.
We are now 1 million strong and with one million letters being sent into Word Perfect’s mail box, support will resume!
Alex Yang Whitestone, NY.
Nothing would lend more credibilty to the Amiga as a business machine than having Word Perfect 6.0 and Plan developed and available on the Amiga FIRST! Let's hope that Word Perfect Corporation will continue developement of these two programs on the Amiga.
(MM— Tech Ed.)
• AC* Compatible with Dpaint Ilf animation... If an Oscar were to
be presented for Technical Excellence in Amiga Graphics, the
winner would certainly be (the envelope, please) - The
Director.. an exciting, unique program.. likely to become a
classic.." Steve King, Commodore Magazine April 1988 "I must
give The Director top marks for ease of use and capability. For
the novice or serious presentation creator, this package is
unequaled. It belongs on the shelf of anyone who considers
himself an Amiga graphics connoisseur."
Oran J. Sands III.
Info Magazine June 1988 ... And that is only the beginning. In addition to giving you frame by frame control over multiple Anims, The Director can add page flipping, sound, text generation, and mouse or keyboard interactivity to your presentations. Create anything from the simplest slideshow to the most sophisticated desktop video production.
Script your production with an easy, Basic-like vocabulary. The Director provides powerful image and memory management blitter, text and effects control. A freely distributable player program, the Projector, is also included.
» Use IFF images in any standard resolution including HAM and overscan
• Preload images, Anims, fonts and sounds up to your memory limit
• Basic-like vocabulary: For/Next, Gosub/Return, If/Else/Endil
• Arithmetic expressions, random number generator, variables
• Execute AmigaDOS commands from your scripts
• Fades, Dissolves, Blits, Wipes, Stencils
• Page flip full or partial screens
• Text string and file input and output ^
• Keyboard and mouse interaction
• Drawing and palette commands mci/c
• Digitized soundtrack module DISKS e 4 irn ¦ | i | .00 each .
Supports IFF Amm playback prQbe s
• PAL compatible RGB (1 meg)
• Not copy protected NEW! DIRECTOR TUTORIAL VIDEO 95 A step by
step guide to using The Director. The tape takes the novice
through AmigaDOS CLI commands, script editing, adding effects
to slideshows, and page flipping animation. The more
experienced user will learn double buffering, effects with
Anims, the sound module, the array, and advanced techniques.
TOOLKIT for THE DIRECTOR 95 The Director Toolkit is a disk packed with features and enhancements to expand the capability of The Director. There are new wipe routines, a palette selector, a pie chart generator and much more. The new and enhanced BUT Utility has a powerful interface to help create Wipe, Dissolve, and BLIT operations. It also automates the process of moving an object over a background, generating a complete working script This disk is intended to be used with The Director software.
• New wipe routines Enhanced BLIT Utility including object
movement over backgrounds Standard file requester callable from
Director scripts
• Screen save from Director scripts
• MIDI input module
• Standard Anim compressor
• Pie chart generator Check or money order payable to:
• Sine and cosine functions a
• Card game example j^c\ Right Aatwert » Palette selector Box
3699
• Text displayer / Torrance. CA 90510 .And more! (213)325-13n
Please add shipping and handling California residents add
614% sales tax.
New Products and Gold Disk Software’s Design 3D brings the power of professional animation to your Amiga. Design 3D is an interactive 3D object editor with rendering and animation capabilities.
The program lets you create three- dimensional animation ojects which you can add up to four light sources you define, and you can manipulate your point of view at the click of a mouse.
The screen is divided into four work windows, each displaying a particular view of your object: front, side, top, and perspective, which features hidden surface removal and automatic shading from any viewpoint. Design objects by pointing and clicking the mouse, and by using the tools at die top of die screen.
Pull-down menus allow different configurations for your designs, and they offer tools to make your designing easier.
Cursor coordinates are displayed continuously at the bottom of the screen in real rime for precise object construc¬ tion. You can save and load objects in VideoScape format, which means you will have a powerful 3D object creation tool to use with Videoscape.
Design 3D lets you create wire frames and solid objects in color, auto 3D text with built-in font editor, built-in animation facilities, and real-time object rotation. The program reads and writes VideoScape objects, creates files for Professional Page, lets you use genocks.
Or record animations on a VCR.
When you are through, you can output to printers or an HPGL plotter.
Whether you are an artist, designer, architect, engineer or home user, Design 3D will add another dimension to the objects you render.
Prison The year is 3033, and crime is so rampant that criminals are no longer being sent up the river. Instead, they're being sent up in space, to the aban¬ doned planet Altrax. .Mid you, lucky soul that you are, get a free ride on the Altrax shuttle when you’re unjustly accused of a crime.
That's when the fun begins. In Actionware’s Prison, you’re job is to escape the odious place before they ship you back in a shuttle coffin.
Fortunately for you—but unfortu¬ nately for the driver—a pleasure craft has crash landed on the planet’s electro- security net, wrecking the vehicle hut leaving the escape pod intact.
There’s one problem though. You don't know where the pod is. And of course, a few other people—namely every prisoner on the planet—want the craft, too. So you must kick, punch, and claw your way tlirough maore than 300 screens of play as you search for the pod.
All movement is controlled by die joystick. There is no typing involved.
Your character can communicate and interact with other characters—usually by a swift kick to the groin.
Uzzi Interface If you need help getting off die planet, grab an Uzzi. With Micro iVlomentum’s Uzzi Interface, you can do just that. The Uzzi Interface plugs between your computer and joystick, and allows you to switch between standard and rapid-fire mode.
In single fire mode everything works normally. But in rapid fire mode, with die fire button held down, a continuous stream of bullets (or what¬ ever type of ammunition your game uses) will rain down on your enemy.
You can use the fire rate frequency knob to fine tune the fire rate from 1 to 20 times/second, depending on the game you are playing.
The Uzzi Interface comes with a standard 4-ft. Cable to accomodate Amiga 500 owners. It is fully compatible with the standard mode, or your favorite joystick, Serial Solution Tile Serial Solution, from Check¬ point Technologies, is a dual port serial board for the Amiga 2000. The Serial Solution is an internal plug-in board that adds two serial ports to the Amiga’s built-in serial port.
The first port is an Amiga- compatible, 25-pin serial port that will drive most serial devices. The 24-pin port supplies 12 Volts of power, just like die Amiga's built-in port, so it will accomo¬ date most Amiga-specific peripherals.
The second port is an AT-compat- ible, 9-pin serial port. The 9-pin port is functionally equivalent to the 25-pin port, hut it will also adapt to AT serial cables. The Serial Solution can be used with printers, plotters, laser printers, PostScript printers, modems, MIDI interfaces, drawing pads, sound sam¬ plers, and VCR controllers.
The Serial Solution works with most software written for die Amiga’s internal port. With a port configuration program, you can use your software widi the 25-pin or 9-pin port, so you can print, plot, play MIDI instruments, and be on-line at die same time.
The board plugs into any available expansion slot on the Amiga 2000. The Amiga's auto-config services will map the board into the Amiga’s device address space.
Break into higher storage capacity Progressive Peripherals' The Vault gives your Amiga 500 or 1000 a standard interface to use standard Jow-cost, IBM- style hard drives. The Vault uses RLL technology' to store more information on each track of your hard drive, giving you higher storage capacity at a lower cost.
A variety of utility software will help you format and maintain your hard drive. The Utility Manager simplifies installation even for the novice. The Vault also includes the CLImate utility program to help you manage the contents of your hard drive.
Other Neat Stuff The Vault’s interface cable adjusts to tire difference between die Amiga 500 and 1000 expansion buses so you can connect The Vault to either a 500 or
1000. The cable also lets you place the Vault up to 8 feet from
the computer.
The package comes with The Vault hard-drive cabinet widi hard drive, The Vault Intelligent interface cable, installa¬ tion manual, installation software, power cable, Climate disk management software. The Vault comes in four sizes: 20 meg (9-95), 30 meg (9.95), 40 meg (9.95), and 65 meg (99.95). Designer Databases For the liacker who has everything, Software Visions proudly presents Designer Databases lor home and business use. The ready-to-use databases are sold separately. They work with Microfiche Filer and Microfiche Filer Plus, and provide examples and solutions for common
home and business problems.
The Business I database contains die first commercially available fourth- party Arexx macros. The Inventory form provides automatic processing and reporting macros; billing features auto¬ matic inventory and updating macros; and the calendar has automatic reminder and reporting macros. The mail merge feature provides macros for Word Perfect, ProWrite, excellence!, scribble!, and Kindwords.
The Home ! Database provides forms to keep track of your videotapes, CD’s, records, stamps, coins, books, recipes, wines, personal inventory, home budget, and Fred Fish Disks.
Software Visions plans to expand the collection soon with Video/Graphics/ Sound 1, Home II, and Business II, Momentum Check Also on the financial management track is Micro Momentum's Momentum Check, a personal checkbook manage¬ ment program. Momentum Check’s trans¬ actions are limited only to disk space, and can print checks with custom setup option, provide full-screen editing on forms, and support any Amiga hardware configuration.
A utility menu of functions will let you change posted transactions in the Master Ledger and provides a backup restore function.
You can inquire and report functions by date, check number, and classification code. Class codes are set up by the user to track different money transactions.
For example, you couid set up a Class Code for entertainment drat would allow you to generate a custom report of ah the money you have spent on entertainment by date or check numbers.
You can also set budgets for each Class Code and then generate reports showing actual verses budget. The Addendum feature lets you track cash transactions that may affect your budget or reports. If you pay for a meal with cash, you could use an Addendum so that meal would be included in your entertainment report.
Momentum Check also provides identifiable screens for different func¬ tions. When you do a deposit, you get a deposit slip; a withdrawal provides a withdrawal slip, etc. Balancing your checkbook is a snap be cause Momentum Check prompts you for all transactions that appear on your bank statement. Once that informa¬ tion is entered, your checkbook is balanced.
(left) Prison from Actionware (right) The Vaultfrom Progressive Peripherals Momentum Check provides you with an easy-to use-programs that can help you keep your checkbook and budget in line.
Hardrive from Melmac Product Information For those of you who think A.L.F. is just a furry freak from outer space, Pre'spect Technics presents AJL.F. (Amiga Loads Faster). A.L.F. is an adaptor kit that lets you easily connect low-cost, IBM-standard hard disks such as the ST-412/ST 506 to the Amiga. The kit includes both die hardware and software you need to get your hard disk up and running in minutes. The hard¬ ware unit includes a standard IBM hard disk controller and an adaptor to connect the controller dirough the Amiga. A.L.F. also lets you externally connect two hard disks to the Amiga.
A. L.F. features shorter loading times, automatic installation,
increased writing rate and higher data safety. A.L.F. also
includes AlfMount, an Automatic Moundist editor, and many
additional utility programs. The hard disk is also
write-protectable.
You don't have to know complex
CI. I commands to mount the hard drive, as all utility programs
can be run from die Workbench.
Version 2.0 should be available soon, and will include resec-protected driver widi AutoMount. No moundist and no change of startup-sequence will be required.
Gold Disk
P. O. Box 789 Streetsville, Mississauga, Ontario Canada L5M 2C2
Tel: (416)828-0913 Design 3D, S 99.95 Actionware, Inc. 38 W
255 Deerpath Road Batavia, IL 60510 Prison, S 39.95 Micro
Momentum, Inc 100 Brown Avenue Johnston, Rl 02919 Uzzi
Interface, ,95 Momentum Check, .95 Checkpoint
Technologies
P. O. Box 2035 Manassas, VA 22110 Tel: (703)330-5353 The Serial
Solution, 9.00 Airbali Another basketball simulation?
Well, son of. In Microdeal's Airball, you are die basketball simulation. The Evil Wizard has turned you into a rubber ball widi a slow air leak, dien set you loose in a mansion with 300 rooms. Your goal: find the spell book that will set you free—and don't stray too far from the air pumps.
Somewhere in the casde is a spelibook widi the incantadon diat will bounce you back into human form. And you will have to keep an eye out for the air pumps that will provide you widi precious oxygen.
Software Visions, inc.
P. O. Box 3319 Framingham, MA 01701
(508) 875-1238 Designer Databases Home, .00; Business, .00
Progressive Peripherals and Software 464 Kalamath Street
Denver, CO 80204 Tel: (303)825-4144 The Vault Pre'spect
Technics Inc.
P. O. Box 679 Station 'H' Montreal, Quebec H3G 2M6
A. L.F. Microdeal 576 S. Telegraph Pontiac, Ml 48053
(313) 334-8729 Airball, 339.95 To keep you on your toes, the
rooms are filled with spikes of all types and sticky spots
on the floor that'll tent you up—literally. As you bounce
along, you will pick up objects needed to add points to
your score.
Airball—a different kind of basketball simulation.
(left) Design 3D from Gold Disk (right) Designer Databases from Software Visions .. JD JD ja M UNLOCK THE GRAPHICS POWER OF YOUR AMIGA 2000!
FlickerFixer is an advanced graphics adaptor that eliminates your Amiga 2000’s interlace flicker and visible scan lines. The result: super¬ ior quality color or monochrome graphics and text — for such demanding applications as CAD/CAM, Desktop Presentation, Graphic Design, Animation, 3D Modeling, Video, and Word Processing.
FlickerFixertWs into the Amiga video slot, is fully compatible with all software, and does not modify the standard Amiga video signals. For more information or to order, call MicroWay Sales at (508) 746-7341 or your Amiga Dealer.
Priced at 5, flickerFixer is made in the USA and is FCC Class B approved.
FlickerFixer upgrades the Amiga 2000 with a flicker free 4096 color palette, has an overscan mode that features a screen size of 704 x 470 pixels and drives most of the popular PC Multiscan and VGA monitors, including the NEC Multisync and Mitsubishi XC1429C.
MicroWay... Respected throughout the industry for high quality engineering, service and technical support.
Micro mr World Leader in PC Numerics
P. O. Box 79. Kingston. MA 02364 USA (508) 746-7341 32 High St.,
Kingston-Upon-Thames, UK, 01-541-5466 USA FAX 617-934-2414
Australia 02-439-8400 flickerFixer and MicroWay are trademarks
of MicroWay. Inc. Amiga is a registered trademark of
Commodore. Multisync is a registered trademark of NEC.
In recent years there have been two major Leaps forward in personal computing—HyperCard and Multitasking. Bill Atkinson's brainstorm combined the functions of database, word processor, and paint programs in a streamlined, stand-alone package the user could navigate freely through Hyper-Text.
Suddenly the average user could create customized links between picture, sound and text data, effectively personalizing his computer environment and allotting access to a simplified form of programming, albeit with a certain expanded overhead.
Multitasking was, and is, Amiga's ace in tire hole. With your 500, 1000, 2000 or 2500 you can simultaneously run the same applications HyperCard emulates. The IFF picture and sound formats allow data created in one vendor’s product to be modified, combined, and shared with other programs for image processing, desktop publishing, animation, business presenta¬ tion, etc. HyperCard's advantage is the transparency of data movement around its inner pathways. This ability has its costs: each pait of HyperCard is somewhat limited by the need to keep tire overall code size manageable. If the Amiga
user could automate the direct transfer of data between several full-blown multitasking applications, the effect would be one powerful super-application. Enter Arexx.
You have probably heard a great deal about Arexx over the past few years since author William S. Hawes developed his implementation of M.F. Cowlishaw’s REXX language, an IBM procedures language for use with mainframes. Recently fire Soon to be, if not already, available programs include;
• Digi-Paint 3 paint program
• Turbo Silver 3.0 SV, PageReader 3D, and 3D Professional 3D
ray-tracers
• FrameGrabber n software
• BaudBandit terminal communications program
• Magellan artificial intelligence/expert system and companion
Toolkit Interface release
• The Advantage spreadsheet
• Thinker hypertext idea processor
• Atredes 1.1 and BBX BBS programs
• FreD speed-dialer
• Designer Database series releases for use with Microfiche Filer
Plus Certainly an impressive list, it will continue to grow as
each new program or update with Arexx adds power and functions
to every program that talks Arexx. Though now past the
million-shipped mark, the installed base of Amigas is small
compared to its more established predecessors.
And the economic rewards for software developers ate naturally more limited and proscribed. Productivity software is therefore written for the greatest common denominator, and die user must either adapt to a program not entirely compatible, or hire a programmer to write an application designed to the user's specifications. Also, multitasking issues require new concepts and solutions that are just now being devised on die Amiga.
Adventures in by Steve Gittmor Amiga community has seen a veritable blizzard of Arexx- compatible programs in almost every software area. Arexx- compatible programs now available include:
• CygnusEd Professional and TxEd+ commercial word
processor/editors
• Uedit and QED shareware editors
• AmigaTeX typesetting program
• C.A.P.E. assembler
• Microfiche Filer Plus and Superbase Professional databases
• Superplan and Plan/It spreadsheets
• Atalk-lII and VLT terminal communications programs
• Lattice compile:'
• Wshell command shell
• Nag Plus 3.0 schedule assistant These sophisticated programs
lean heavily on macros to allow the user to manually create
appropriate strategies and techniques and then record them for
automatic playback. Arexx steps into this ever-growing complex
environment and offers a common language for these macros,
allowing the use of die same shortcuts from any
Arexx-COmpatible program.
But I’m sure you’ve heard enough about how useful and flexible Arexx is. What’s less clear is how the average Amiga user can get into and master this language. Although Bill Hawes describes Arexx as "an easy-to-leam yet powerful language”, he is speaking to the novice programmer, not the user. The Arexx manual is frill of infomiation and very useful once you've gotten started. But it is designed as a reference tool, not a tutorial, Some programs that rely heavily on Arexx, like Microfiche Filer Plus, contain considerable information on implementing Arexx, but you can use the macros without
understanding how they work, or how to apply these scripts to other programs. Some programs refer to Arexx on the box but do not mention it in the manual, just a readme file on the disk. Others, like CygnusEd Professional, have elaborate documentation, but the choices and complexity of configuration decisions can bewilder the average user.
The best way to hurdle this Catch 22 is to choose a task Arexx can deal with effectively.
EVENT Let me describe what Arexx can accom¬ plish, as I sit writing this article.
Suddenly, an elephant shriek fills fee room, followed by my Amiga's voice announcing: “Oh, great ruler of the universe, a message.
Call about Arexx article.
Deadline!” Nag Plus 3.0 has triggered a reminder. I quickly navigate to its main screen by pressing the hotkey combination to bring it to the front. Moving to the list of Action events on the screen, I click wife fee right mouse button on fee time of the reminder, which contains die text entry just heard. This activates an Arexx script feat looks at fee third and fourth words of the event, and opens a window in CygnusEd with the proper filename. It looks to see whether DATA there is a previous file in my notes directory with that title. If no such file is found, the Arexx script then runs
Microfiche Filer Plus, searches fee database for feat name, finds fee appro¬ priate record, and extracts fee name, phone, business name, etc. and loads it into the window in CygnusEd. The CygnusEd window7 is then moved to the front, and fee TASK sor is placed after a date and time stamp, ready for me to make notes on my conversation.
If the Nag Action event reads “phone Editor", the Arexx script would load FreD, fee speed-dialer program, and dial the appropiate number through the modem. But in (continued) IF YOU THOUGHT WE WERE HOT BEFORE, COME SEE US SIZZLE NOW!
Amazing Computer systems is HOT. Our sizzling selection of Amiga products has become the talk of the town. We are now in our new location with over 1100 titles in stock & the hottest selection of hardware.
Accessories and books. All at RED HOT prices. So remember, when you’re hot, you re hot. And when you're not, you're not shopping Amazing Computer Systems.
Amazing Computer Systems, Inc. Wage on the Parkway 5100 Bettline Pd„ Surte s896, Dallas. TX 75240
(214) 3S6-8383 Mon-Sat !0am-6pmThurs llam-Bpm Autnorizeo Amiga
Dealer MC VISA AMEX DISC Accepted this case, I want to
collect my thoughts and get my excuses straight before
calling, so I just have Nag remind me. I click into the
other window on the CygnusEd screen and continue working on
my article.
Together with Nag Plus author Richard Stockton, and wiLh die support of CygnusEd's Perry Kivolowitz and Microfiche Filer's Gary Samad, we slowly refined diis system. Now that die system is stable and in use on several Amiga configurations, from a 1000 with 1 meg and 2 floppies to a 3 meg 2000 with an 80 meg GVP/Quantum hard drive, we are modularizing the Arexx scripts so the system can expand and configure easily to whatever Arexx-compatible editors, databases, terminal pro¬ grams, etc. are available, Although diese modules are intricately interwoven, they are direct descendants of the first
scripts we built by modifying existing examples. So let’s look at one of these original fledgling programs, an Arexx example that uses any public-domain picture viewer to display images from within any other applica¬ tion.
Before we look at viewpic.rexx, let’s make sure our environment is set up correctly. Assuming you have followed the manual’s instructions for installing the Arexxdibs directory contents in your system LIBS: directory (as well as the same operation for die c: director}'), you will need to add two odier libraries to make our viewer and other scripts work. Available on Plink and other pay networks are two required files— Rexxarplibl.3 and Arpl.3. When you have downloaded and unarced or unzooed drem, you will find rexxarplib.libraiy and arptib.library, which you should also copy into your system
LIBS: directory. Now open an editor or use ED to enter this Arexx script, and save it as setup.rexx in your rexx: directory.
/* setup.rexx - Mounts the REXX support libraries */ SAY ’Mounting rexx support libraries ...’ IF ~SHOW(‘LV’rexxsupport.library”) THEN CALL ADDL1B “rexxsupport.Iibrary",0,-30 IF ~SHOW('L’,”rexxarplib,library') THEN CALL ADDLIB “rexxarplib.library”,0,-30 SAY ‘REXX Libraries available...’ SAY SHOWC'L”) EXIT Run this from the CLI or include it in your startup-sequence tike this: rexxmast waitforport rexx assign rexx: dhO:rexx rx setup.rexx Now you are ready to write your first Arexx script. Actually you already have with setup.rexx. But we'll go through viewpic.rexx line by line to show how it
-works.
/* viewpic.rexx - uses ARP file requestor to display picture file */ All Arexx programs must start with a comment, and why not make it the tide. All characters between /* and V are disre¬ garded by the interpreter, and you’ll soon appreciate die comments as a crucial source of information.
/• copyright 1989 ltichard Lee Stockton and Gramma Software. V /* This code is freely distributable as long as diis copyright */ /* notice remains, unchanged, at the start of die code. Thank you.'!
I would suggest doing what the man says, because it’s scripts like this written by professional programmers in their "free" time that offer die quickest tutorial path to success with Arexx.
Viewprogram - ’c:SuperviewJ Insert the path to your favorite show-picture utility here. (I use Superview, available on Plink, the Fish disks, and elsewhere).
Picdlr = ’dhl:pics' Set this path to where you have a lot of pictures, either on a hard drive or rani: to scan de-arced pics before saving them.
/• TRACE ?R V In future installments, you will be able to follow the progress of your script interactively by removing die comment characters from around Trace. But if you type carefully, this example will work.
OPTIONS RESULTS This is a toggle diat switches fii action returns between error codes and character strings. Here we are enabling die function Getfile to return a filename string, Getfile? Don’t worry, it’s coming. Read on.
IF ~SHO\V(f,STDOUD THEN CALL OPENCSTDOUT.’NIL:1) /* Guru Insurance 7 Even Up The Score!
This mouthful provides a default output stream if you are running a command that requires an output stream.
Filename - Two double quotes read as a null or empty string. We assign a null value to filename so the program does not think there is a filename named '‘filename”.
Filename - GETFILE(150,36,picdir,”",’1 Select A Picture File To Display *0 This line opens a file requestor at 150 pixels right and 36 pixels down from die upper lefthand corner of die Workbench screen.
The requestor displays the contents of where you have assigned your picture directory. Another blank string follows since we have yet to select a filename, and the final entry contains die text information displayed in die tide bar of the requestor.
IF filename— THEN EXIT 5 This is to safeguard against the possibility of clicking on “Cancel" in the requestor. If you do, the program quits with only die mildest (level 5) of complaints.
Fileinfo “ STATEF(filename) IF WORD(fileinfo,l)-—'FILE1 THEN EXIT 10 The above lines make sure the filename result is indeed a filename, and not a directory or a device like dhl: or ram:. The Arexx function STATEF returns a character string containing several words, the first of which is either DIR (for directory) or FILE, or empty, as in blank, zip, nada. The next line checks that first word with die Arexx function WORD. If diat word is not equal to (~=) FILE, dien sayonara.
ADDRESS COMMAND viewprogram filename If we have made it past this gaundet of error checking, it’s time to show the file, and display our picture. ADDRESS COMMAND is die language Arexx uses to RUN a DOS program. It uses die viewprogram you’ve assigned, and die filename you’ve selected and checked as arguments. Voila EXIT Although not required here, EXIT will be necessary when we begin expanding this and other routines, so we put it in anyway.
Here, widiout my narration, is the complete script; /* viewpic.rexx - uses ARP file requestor to display picture file V /* copyright 1989 Richard Lee Stockton and Gramma Software. V /* This code is freely distributable as long as this copyright */ /• notice remains, unchanged, at die start of the code. Thank you. V viewprogram » ‘c:Superview’ picdir = ‘dlihpics’ (continued) Let your Amiga give you the Advantage in making better investment decisions!
Color graphics of Individual Stocks and General Market Trends help you make more profit in this volatile market.
High Low Close, Moving Averages, Centered Moving Averages, Volume, Relative Strength, Stochastics, Wilder's RSI, Cycles, Trend lines and Momentum. Powerful re¬ ports such as the Relative Strength Report help you pick the best performers. Use the Market Barometers to help you time your market entries. Update Stocks, Mutual Funds and Commodities manually or automatically. Easy to use communications included.
Only .95 See your local Dealer or Call: Software Advantage Consulting Corporation 37346 Charter Oaks Blvd Ml. Clemens, MI 48043 (313) 463-4995 Amiga and the Investor's Advantage are trademarks of their respective companies.
/* TRACE ?R */ OPTIONS RESULTS IF ~SHOW(f,STDOliT) THEN CALL OPENfSTDOUT/NIL:’) /* Guru Insurance V filename - filename - GETFILE(150,36,picdir,"”,’’ Select A Picture File To Display “) IF filename—"" THEN EXIT 5 fileinfo - STATEF(filename) IF WORD(fiieinfo,l)~-'FILE’ THEN EXIT 10 ADDRESS COMMAND viewprogram filename EXIT Save in your rexx: directory as viewpic.rexx and run from die CLI by typing (without the quotes) “rx viewpic.rexx”. If you're like me, and have Superview in your c: directory and IFF images in dhhpics on your hard drive, you will be presented with a requestor and a choice of
pictures when you hit <re- turn>. Click on one, then on OK, and bingo. You can also load tliis script in as a macro (I have it as FI when in CygnusEd) and run it from within any Arexx-speaking program.
One more quick example: Meet a team of the friendliest financial organizers you’ll ever run across.
Smart Scrolls for speed.
Money M ecu or has a truly unique system called Smart Scrrtlls, that handles a diversity of otherwise tedious data entry functions and clips along saving you up u> 70"'. Of your typing time. It's a smart addition to Money Mentor, that's why we call il Stuart Vrnills.
Money Mentor Features:
• Net Worth Statement
• 200 Budget Categories
• 30 Integrated Accounts such as Checking, Cash. Savings and
Credit Cards
• Idaho rale Search Routine allows editing of transactions
according to your specific guidelines
• Automatic Check Printing
• Automatic Account Balancing
• Color Graphic Reports illustrating actual vs. budgeted amounts
• Over SO Reports to choose from!
What they’re saying about us!
"Money Mentor bos la hr the nicest took and feet <if any money manager ptichagefor home use l/rat t bate Cl vr seen." - - Amiga Sentry "Money Mentor is an excellent product " — Amazing Computing Money Mentor is for everyone!
It does more than just keep your checkbook balanced Money Mentor helps you manage your personal finances which is important to any family or individual With Money Mentor, you can Ix: looking better financially.
Order Monev Mentor today Money Mentor sells for only .95!
EE3 y/SA SEDONA SOFTWARE SEDONA SOFTWARE/11828 RANCHO BERNARDO RD , SUITE 12B-20/SAN DIEGO, CA 92128/CALL (619) 451-0151 /* sound.rexx - uses ARP file requestor to play soundfile */ /• copyright 1989 Richard Lee Stockton and Gramma Software. */ /* This code is freely distributable as long as this copyright */ /* notice remains, unchanged, at the start of the code. Thank you, 7 playsound - ‘c:Sound' sounddir - 'dhhsounds' /• TRACE ?R */ OPTIONS RESULTS IF ~SHOW(f,STDOUT) THEN CALL OPENCSTDOUT.’NIL:’) /* Guru Insurance V filename - filename - GETFILEfl 50,36,sounddir," Select A Souncifile To
Play “) IF filename—"" THEN EXIT 5 fileinfo - STATEF(fiiename) IF WORDCfileinfo.l)—'FILE' THEN EXIT 10 ADDRESS COMMAND playsound filename EXIT If you look carefully, the only difference between viewpic.rexx and sound.rexx are the obvious changes of path names, progrant variables, and comments. Just make those changes and load a sound player into your c: directory- along¬ side your picture viewer. Save this new- version as sound.rexx in your rexx: directory and you're set. Not only can you learn from examples, but you can reuse them in total or in parts to create other scripts with ease and
minimal typing. And if it works, don’t fix it.
Once you’ve gotten over the hump of getting started, Arexx will begin to make more and more sense. The language is written with a small number of commands, most of which are English-like and self-explanatory.
There are many listings of examples on PeopleLink, Genie, and CompuServe, as well as Bix and local BBS’s. Bill Hawes answers questions E-Mailed to him on die above- mendoned nets, and he’s just begun an Arexx class the first Tuesday of every month on Plink, beginning on Line 99 at 9:30PM EST, 8:30PM Central. If you miss the class, you can find a transcript in the library", And don’t forget to read die manual; you’ll be amazed how things that just a few days ago seemed totally incompre¬ hensible are suddenly so obvious. The glossary in the back is short but useful and. If you cannot find a term
there, check the index. You will usually be directed to a definition in the text.
As more and more developers incorporate Arexx into their products, the number of example scripts and business- oriented macros will grow exponentially. The overhead of adding Arexx ports to a program is minimal, and justified by the increased utility and maximized use of multitasking. Indeed, the ability to automate and stitch together into a seamless fabric the wide variety of grapliics and animation software is vital to die success of the Amiga as a serious professional tool. Stay tuned.
• AC- NfiG PLUS 3.0 OolWULt ASSISTANT review by Marion Deland Nag
Plus 3-0 is a useful little program that takes advantage of the
Amiga's multitasking abilities. It calls itself a Schedule
Assistant, and combines an appointment calendar, a “do list”
and a telephone dialer. And it talks.
Phis is a cute program. It might be a little too cute, but you can load it from your startup-sequence and bypass some of the cuteness. The name of the company is Gramma Software, for instance, and the program icon is a sweet old lady shaking a finger: “For your own good." The author is Richard Lee Stockton, and die manual tells us his favorite books (“Hitchhiker's Guide") and pets (“imaginary"). But cuteness aside, this is a useful program that does what it claims to do at a reasonable price.
The basic appointment calendar was first introduced as tire public domain program Nag, available on Fred Fish Disk l6l. There are major improvements in the commercial version, including Notepad access, Arexx support, and phone dialing. As I write this, version
3. 1, with extended Arexx support, is planned for a June 1
release. Stockton promises an inexpensive upgrade policy for
registered owners.
When you first run Nag Plus, iL hides on your screen as a tiny window which expands when you click on it or use a "hot key" combination of key¬ strokes. When it expands, the first thing Nag Plus does is check die “year files” and let you know if you’ve missed any reminders. (More about that later.)
Then the Main Window appears. It shows the appointment calendar, starting the current date. Only days with sched¬ uled appointments are displayed; and one of the many nice features in diis program is that current dates (if shown) are clearly marked “today” and “tomor¬ row”. A code of colored dots tells you if you have asked Nag Plus to give you a reminder by voice, sound or screen message.
At right is die overall calendar showing the cun-ent mondi, with the current date marked. The time is also displayed. A click of die mouse button changes the current month, day, or year.
From die main window, you can “check off' a completed appointment by clicking on it. It still appears, but in the background. Clicking on die Checkmark button makes it disappear entirely from the main window.
You can print out the appointments for one day or several days. If your printer has a small font, checked-off appointments will print out in diat font, and scheduled appointments in regular type. Nice!
You can search die calendar for appointments that contain a specific word or phrase. You could use diis to find all meetings with a particular person.
Nag Plus will even dial your calls for you. Just enter the phone number in your appointment and click on it when “Nag Plus 3-0 combines an appointment calendar, a "clo list", and a telephone dialer. And it talks. ” Figure One: The main window appears, showing the appointment calendar. At right is the overall calendar showing the current month.
You want Nag Plus to make the call.
(You need a Hayes-compatible modem that will transmit at 300 baud.)
Something I like very much is the ability to attach a text file to any word or date, using either the Amiga Notepad or your favorite text editor. But there is no marker of any kind to tell you a text file is attached. I think this would be useful.
A Shrink button shrinks Nag Pius back down to die tiny—and 1 do mean tiny!—window7 in die top left corner of your Workbench screen.
To add, change or delete events, swatch to the Edit Window'. Enter events, one-per-Iine, in the edit box. You can schedule birthdays, holidays, anniversa¬ ries or deadlines, as well as regular appointments and “acbon" events (the Do List). You can get around the one- appointment-per-line limit by typing in several lines at one-minute intervals, then having Nag Plus display the times only at 5 or 15-minute intervals.
It took me a while to figure out how' to delete something from my Do List. (“Action" items, including those that are checked off, are transferred from day to day until you delete them.) I looked for help in die manual, but there wras just a passing mention of deleting appoint¬ ments, and no reference to it in the index. Eventually, I found die delete button. I discovered, too, that you can keep a record of completed actions by entering the time you completed them, dien checking them off. That way, diey become an “appointment" and stay put, but in the background.
You can also ask Nag Plus to remind you about appointments. The program is appropriately named—unless you set it for a once-only reminder, it repeats the reminder again and again until you click to acknowledge it. The first time this happened to me 1 wras on die telephone. Try' explaining to a client that die peculiar voice announcing at 30- second intervals, “Oh, great ruler of die universe! Nag has a message for you." Is actually your computer! (That’s die default message, by the way. See wfeat I mean about cute?)
You can ask to be reminded at die time of the appointment, or ahead of time, at intervals ranging from 15 minutes to 30 days. That’s where die “missed nags” message comes in.
Suppose your parents' anniversary7 is on September 11, and you promised die family you’d plan the party7. You asked Nag Plus to remind you about it 30 days ahead—on Saturday August 12th.
But you were away for the weekend, and didn’t turn die computer on until Monday August 14th. Nag Plus wall teil you about the "missed nag”. But if you go away on vacation, and don't rum on your computer until September 13, you’ve missed the anniversary7 altogether, and Nag Plus won’t bug you about it, If this starts to sound confusing, take heart; comprehensive help is available. Clicking on the Help button in the main window brings up a Help w'indow7 which explains each area of the screen.
The manual, although w7eil- designed and spiral bound, is not as clear as it could be. But a lot of thought has gone into it: there are sections for new Amiga users and advanced users, as w'ell as detailed instructions on configur¬ ing Nag Plus to suit your needs.
There are also a couple of disk files containing “notes” and “hints"—mosdy information on executing REXX and EXEC files and attaching notes to appointments. (What exacdy does “pre¬ pended to the event-text" mean?)
Configure it your way Nag Plus is very7 flexible. For example, you can schedule appointments at one-minute intervals. Many appoint¬ ment calendars available for other computers lock you in to 15-minute or half-hour segments.
You can reconfigure Nag Plus at any time through a separate SetNag program. Among other things, dris lets you change die greeting message, die voice (pitch, rate, etc.), and sound. The Nag Plus disk includes a number of digitized sound files, including a fanfare, an elephant and a sneeze. (You can hear them by clicking on their icons in the Sounds drawer—good idea!) You can also use the standard Amiga beep.
More than one person can use Nag Plus as it will maintain separate sched¬ ules and “tiny w'indow7" configurations for each person. You can tell it where to look for the year files, note files and help files. You can change the size of the buffer diat contains the year files. You can disable many of the features, like repeating NAGs, and missed NAGs, and you can change the characteristics of the tiny Nag window, reverse Workbench colors, and change the time format. This program w7as definitely designed to be flexible.
Incidentally, you can execute REXX (and Arexx) and EXEC commands from within Nag Plus, by entering them as appointments. Richard Stockton show7ed me how he used this feature to back up his files from RAM to floppies automad- cally. There are suggesdons for diis in the manual.
Sags about Nag Some things about Nag Plus could be improved. 1 didn’t like the way die manual describes everything by color— orange box, white dot, etc. This is fine if you use the original Workbench colors, but I don’t. According to Stockton, a printer's error left out an explanatory page, but to my mind this isn’t really the answ'er. I don’t want to have to translate constandy as I learn a new- program, it would have been better if symbols were identified by shape rather than color.
I w7ouid like Nag Plus to be able to maintain expense records, because most people keep track of expenses in dieir appointment calendars, with the appoint¬ ments. While Nag Plus allows you to record them through Notepad, diere is no way to total them, which I would find useful. But I realize that a choice sometimes must be made between extra features and the memory they take up.
I like Nag. I load it from my startup-sequence so it sits quiedy in a comer of my Workbench ail the time, and I don’t have to see diat silly old-iady icon. I use it mosdy as a Do List, to keep track of phone calls and deadlines. And I’ll learn how7 to use it w7ith Arexx—real soon now.
.AC. Gra m m a Softivare 17730 15di Avenue N.E., Suite 223 Seattle, Washington 98155
(206) 363-6417 Sag Plus 3,0, S79.95 Once in a great while a
product comes along that makes my job as a reviewer a
complete joy—a product so interesting and fun you'd have to
pry it out of my hands to get it back! Such is the case
with NewTek's video digitizing system, Digi-View Gold. Not
only did this unique product reaffirm my belief in the
Amiga,but it also brought back that sense of excitement I
experienced when I fired up my .Amiga for the first time!
Amazing Graphics Reviews Digi-View (joid review by Bruce Jordan 1 think if I let it, my Amiga's synthesized voice would be croaking out a line from that old hymn. Amazing Grace: “I once was blind, but now I see...", because that's exactly what the Digi-View Gold system does. It allows your Amiga to see and capture full color images of anything you can place in front of a video camera.
1 really hate stooping to that tired old marketing cliche, but tire possibilities for Digi-View Gold truly are limited only by your imagination. Artists can input their drawings directly from paper—no more drawing with Mr. Mouse! Graphic artists can stuff disk after disk with bits and pieces of die real world to be chopped up and manipulated as they please. Video-ites can now add their Amiga to the ranks of their video ensemble. If your bag is astronomy, why not hook up a video camera to your telescope, digitize the night sky, and then use Digi-Paint to pull out the detail Vert Overscan If
you're into robotics, Digi-View Gold gives your Amiga sight! And since Digi- View Gold uses standard IFF graphics files, hackers can use their digitized images with their own programs, so we may see a change in die look of video games in die near future.
The list goes on, There's even a way of creating three-dimensional images using Digi-View Gold! However, before we get carried away, let’s take a closer look at the Digi-View Gold system, what it contains, what it does, and how to use it.
The basics The basic system consists of four components: the Digi-View Gold package, a video camera, fluorescent lights (Digi-View is color-balanced for fluorescent lights), and some sort of copy stand or tripod.
The Digi-View Gold package contains a video input box drat connects a camera to your .Amiga, the Digi-View Gold software, a three-color filter wheel, and a metal bracket for mounting the filter wheel to a video camera. As for the camera, you'll want the recommended Panasonic WV-1410, closed-circuit, black- and-white video camera (or its equivalent). Further, the copy stand offered by NewTek is adequate, but I drink you could do better—both in price and quality—at your local camera store or drrough a mail-order house diat specializes in photographic equipment.
The fluorescent lights are your responsibility and can be purchased at almost an)' hardware store.
Those of you widi home video cameras may be wondering why I've included die Panasonic camera into the basic system. ‘"Why not just use my own camera?", you might ask. Good question.
The answer is that, while Digi-View does make allowances for the use of home video cameras, you may run into a number of problems.
First, your home video camera does not have the resolution of the Panasonic camera (better dian 550 lines!). Your camera's lack of resolving power may make it impossible to render a quality color image using Digi-View.
Tracking errors is another problem home video camera users may run into. Digi- View expects a 2:1 sync ratio. If your camera uses random sync, or if it Figure Two (bottom right) "Palette”displays the palette of colors being used by the current image. It allows you to alter the individual colors in tire palette, produces a sloppy 2:1 sync signal (not uncommon), you may wind up with tracking errors that result in a choppy, color-distorted picture. NewTek calls tills the “jaggies.” Finally, even though your camera can see in color, Digi-View Gold uses a three-color digitizing process dependent on
the Filter wheel. You may find that the filter wheel does not fit your camera, as is the case with the Sony CCD V3 camcorder. If you’re not handy with tools, you'll probably wind up holding Lhe filter wheel in front of your camera's lens. This gets old real fast! Therefore, to get the best possible images with the greatest ease, your best bet is to go with the Panasonic black-and- white camera. It’s inexpensive and well worth the investment.
Figure Five (bottom left) Color also displays a number of slider switches giving you control over brightness, contrast, color saturation, sharpness and the overall red. Green, and blue aspects of the picture.
Paint by numbers With the basic system, digitizing is surprisingly simple. First, make sure die power to your Amiga is off. Then plug the video input box into the parallel port of your 500 or 2000 (note: Amiga 1000 users will need a “gender changer” to convert die parallel port from male to female). Next, connect your video camera’s video output to the phono-type socket in the back of the Digi-View video input box. Now turn on the power to both your Amiga and the camera.
/After you Kickstart and your Amiga requests the Workbench, insert the Digi- View Gold disk. Double click on die icons and the title screen will appear. On the title screen will be several gadgets that give you choices regarding resolution, overscan, and whether to digitize in color or black and white.
Your choices for horizontal and vertical resolutions range from 320 pixels to a whopping 780 for the horizontal, and from 200 to 480 pixels for die vertical. Each of these unprecedented upper limits for resolution is achieved by overscan, which simply means that the digitized image appears over the entire screen widiout a border.
If you choose to digitize in color, Digi-View defaults to die 4096+ color HAM mode for all resolutions except high resolution (anydiing at or above 620 horizontal pixels). However, once inside Digi-View, you can opt to use fewer colors—say, thirty-two. This allows you to use your digitized images with paint programs such as DeluxePaint.
In high resolution, Digi-View defaults to sixteen colors and does not allow the use of HAM mode. But fret not.
With its powerful graphics routines, Digi- View does an excellent job of extending the apparent color range, producing Images of unbelievable color and clarity, even with as few as sixteen colors.
From this point on, using Digi- View Gold is a matter of available RAM.
This is especially true for titose using Amiga 1000’s with the standard 512K of memory. Users of unexpanded 1000's can expect to be limited to two modes— black-and-white, with a maximum resolution of 320 X 400, and color, with a resolution of 320 X 200. To make matters worse, color work on an unexpanded 1000 is possible only if the external disk drive is disconnected. "WHAT?" Yep, it seems the drive uses precious RAM required by Digi-View. Therefore, unexpanded 1000 users can figure on a one-drive system. Go on, it ain’t that bad!
Digi-View Gold does an excellent job of reproduction even in limited low-res. I guarantee you will not be disappointed.
Besides, it’ll be just the excuse you need to get drat RAM expansion you’ve been wanting.
For this review I used a system consisting of an Amiga 2000 sporting a hard drive, three meg of extra RAM, the new Flicker Fixer board, and an NEC Multi-sync, high-resolution monitor.
(Yeow!) The system gave Digi-View Gold all the room it needed to run and allowed me to push the product to its limit. The results were absolutely breathtaking! It’s a shame that copyright restrictions keep me from showing you all tire results, but I can tell you from firsthand experience drat the pictures in the Digi-View ads are not exaggerations!
Manufacturing art For a run-through of the digitizing process, let’s say we select low-res (320 X 200 pixels), no overscan, and color mode. We do this by clicking on the appropriate gadgets, and then clicking on die gadget labeled “OK." The program loads, the screen turns completely black, and the mouse pointer turns into a large arrow, This indicates that Digi-View is operating and ready to digitize.
Now suppose we want to capture tire image of a pretty woman out of a magazine. Obviously, the first thing we want to do is focus die camera and properly frame die image. The people at NewTek say it’s safe to unplug the camera from the back of the Digi-View input box and plug it into your monitor's composite video socket while everything is running. This allows you to position and focus die camera in real time, without having to wait for the digitizing process. I did diis repeatedly and it seemed fine.
Now that die image is in focus, framed, and -we’ve positioned the lights to get rid of any glare, plug the camera back into the Digi-View input box. We are now ready to shoot.
While placing the red filter in front of the camera's lens, hold down die right mouse button, and a menu bar will appear at the top of die screen. It will display diree menu titles—PROJECT, DIGITIZE, and CONTROLS. Point to DIGITIZE and a menu will drop, displaying diree choices—"Red", “Green’’, and “Blue”. Point to “Red", release the mouse button and, suddenly, vertical sections of die picture about a quarter of an inch wide will begin to appear on your monitor’s screen.
When the image is complete, a smoothing process will begin at the top of die screen and work its way down to die bottom. The entire process takes about a minute. Although die image you have produced is in black and white, you have just digitized the red portion of die woman’s picture. Do the same for “Green” and "Blue”, each time making sure that die corresponding color Filter is in front of the camera’s lens.
Now diat we have all three color images stored in memory, we must give Digi-View die command to combine these images into a single color image.
To do this, pull down the CONTROLS menu, and select “Display." The screen will go black for a moment, and then the full 4096+ color image will begin to appear, line-by-line, from the top of the screen to the bottom. And there we are—our first digitized image. Now pull down die PROJECT menu and save the picture to disk before someone conies in and catches us!
Under Controls Once you have something digitized, Digi-View gives you quite a bit of control over various aspects of die image. The PROJECT menu allows you to load and save images, load the palette of one image for use witii a different image, and display histograms of die red, green, and blue aspects of the current image on the screen.
The CONTROLS menu has four choices: “Color,” “Palette," “Camera" and “Display.” We've already seen what Display does, its function is simply to display die current image in memory.
However, each of die other options on the CONTROL menu bring up gadget windows that provide a surprising number of features for controlling the digitizing process, as well as allowing you to alter your digitized images.
Choosing “Color’from the CONTROLS menu brings up a gadget window that allows you to select various color formats. For instance, you have a choice of Line Art (which gives a high contrast version of the image), black and white, thirty-two colors, 4096 color HAM mode and an extended 4096+ color HAM mode. Color also displays a number of slider switches giving you control over brightness, contrast, color saturation, sharpness and the overall red, green, and blue aspects of the picriire.
“Palette”displays die palette of colors being used by the current image.
It allows you to alter the individual colors in the palette and even change the number of colors used in die digitizing process. The default palette may display anywhere from sixteen to sixty-four colors, depending on the resolution and color mode of the current image.
“Camera”gives you control over certain aspects of the video camera. For instance, there are two controls, Width and Position, which allow you to change die apparent width and positioning of die image without having to physically move the video camera. There is another control labeled Tracking that allows you to adjust rhe tracking between Digi-Viewr and your camera.
Yet another feature offered on the Camera window gives you control over the size of the digitized image. You have the choice of digitizing a full, half or quarter screen image. This allows you to obtain smaller images without die resolution loss typical of the size- reducdon routines used in most paint programs.
Conclusion Overall, Digi-View Gold is a fantastic, easy-to-use package, adding more fun to die Amiga than any product I've seen in a long time. With die right camera, the images produced by Digi- View Gold push die Amiga to the limits of its graphics abilities. At times, die color of the digitized image was just a little off, but I suspect that the more one uses die product, the better one would become tit fine tuning such adjustments.
Other than this minor difficulty, the software performed without a hitch. To add further praise, NewTek brought die whole system in for a very reasonable price. In fact, it's surprisingly inexpensive for the Amiga market!
So whether you are interested in art, video graphics, family snaps or die great nebula in Orion, Digi-View Gold is definitely a winner. With Digi-View Gold, the world is yours to capture.
• AO The release of die Amiga 2500 and die popularity of die 2000
HD have exacerbated problems with the A2090 controller card and
high-resolution, 16- color overscan. The problems are occurring
with some lack of consistency; some people have a problem, and
odiers do not. Programs that make heavy use of chip RAM in
overscan mode, like Deluxe Productions, Pro Video Plus and
odier high-resolution applications, create a problem for the
A2090 controller card.
What makes the problem worse in some machines, and virtually non-existent in others is a mystery. Some people make dianges to dieir startup-sequence, and the problem disappears. Odiers make die same changes, and the problem remains.
If you have a problem with your A2090 in high-resolution 16-color mode or high- res overscan, try die following suggesdons.
The Bugs & Upgrades Column Bug Bytes If you have expansion memory, check your startup-sequence, and modify it to run SetPatch, then run FastMemFirst before you run binddrivers. In a standard 2000 HD or 2500 startup-sequence supplied by Commodore, these commands are executed in that order.
Changing the order of execution will likely make DMA bus problems worse.
You can improve performance during high-resolution and severe overscan operations by specifying a lower transfer rate in die MaxTransfer statement in the mountlist. Unfortunately, this slows down the performance of all other file operations.
Check your MountList for all hard disk fast file partidons and make sure the BufMemType entry is not set to select chip memory. BufMemTypes 0 and 1 select any available memory, BufMemType 2 and 3 select chip RAM, and BufmemTvpe 4 and 5 select Fast Ram.
When the controller begins reading the hard disk, during the screen display of a 16-color or overscan, use Left- Amiga-N to toggle to die Workbench screen during die drive read. Use Left- Amiga-M to toggle back to the application once the file application has completed. If the program uses the front and back gadgets in die top right of the screen, you can use diose to select the Workbench and application screens as necessary.
Obtain PATCH2090.ARC, a freely redistributable utility1 by Klialid Aldoseri diat acts as a workaround for problems evident during high-res 4-bitplane screen displays. The program opens and automatically decreases die size of hard disk ReadAVrite blocks, thus creating less DMA bus contention. You should be able to find it on die information services.
While on the topic of Commodore hardware products, the AT bridge card and the 8 Megabyte Commodore memory card have a problem working together. The problem is caused by the memory' map designed into the computer. The 68000 microprocessor has address lines that can handle up to 16 Megabytes or RAM. .All but 9 MB are used for the system and custom chips, allowing for die 1 MB internal RAM and die addition of up to 8 more on a memory expansion card.
If you do not have a BridgeBoard, you can install the full complement of memory onto the 8 Meg RAM board. The BridgeBoard, however, requires 2 Megabytes of the address lines before it will function. The effect of diis is to drop the remaining available address lines for memory to 7 Megabytes. A full 8 Megabyte RAM card and the AT card cannot work simultaneously in an A2000.
The only solution is to either accept less dian 8 megabytes on the card, or not use the AT Bridge card. Are there any hardware hackers widi a solution to this problem?
The Amiga 2000 is now shipping with one Megabyte of chip RAM. New machines are being supplied with notification regarding die changes required to stock startup-sequences to take advantage of the extra cliip RAM.
The Setpatch command, which is the first command found in die stock startup- sequence, must be changed to specify' die R option, as in the example SETPATCH R. The R option was specifically designed into Setpatch to allow operation with the one megabyte chips.
Commodore has not yet provided dealers with information regarding die field upgrade of 512K chip RAM Aniga 2000's and 500’s. It appears that, in addition to a new fat Agnus chip, the computers must be also equipped with Kickstart 1.3 ROM’s.
Electronic Arts has released Deluxe Paint III by Dan Silva. The program is a stunning improvement, and its animation features are top drawer. The program lists for 5149.95. and upgrades are available from Electronic Ats. For details contact: Electronic Arts; 1820 Gateway Drive; San Mateo, CA 94404; (415) 571-
7171.
Deluxe Paint III requires one megabyte of RAM to operate. A major limitation of Deluxe Paint II was its inability to handle large font directories.
The new font requester can handle font directories of any size. Also, a string gadget is provided, allowing you to change font directories. The requester then makes the new font assignment for you, If you wish to check its appearance, a SHOW burton will display each potential font selection. Dpaint III also supports color fonts, and even comes with a small sampling of the beautiful presentation fonts from Kara Fonts.
A friend and I have already used Dpaint Ill’s animation capabilities to create a video promotion for our local Amiga Users Group. It performed flawlessly, and the included animation player allowed us to easily transfer the animation to a smaller Amiga for editing onto VFIS tape. Animations are saved and loaded in die popular Anim format, which means diere are a lot of pre¬ created animadons you can load into Dpaint III to help you leam animation techniques. Four animations, including die venerable Half-bright Hill (DPaint III suppons 64-color half-bright mode), and a beautiful work entitled
Cry' are included on the animation sample disk.
A problem in Dpaint Ill’s font load system has been reported. When you access a font from a different disk, and then call up the font choice, the program crashes. A technical support representative from Electronic .Ats said re SoftdiskjPubtisking, Inc. off to seef^a wizard... a computer wizard] tfiat is... yA We are publishers of the largest and most successful family of monthly software collections, \ reaching over 75,000 customers each month, including some in Kansas.
We publish four monthly disks... Softdisk for the Apple® II's, DiskWorld for the Macintosh", Big Blue Disk for the IBM - and its compatibles, and Loadstar for the Commodore® 64 and
128. Very soon we will be launching new versions for the Apple
lies and the Amiga®.
:\ We are in need of original, yea magical, utilities, graphics, fonts, games, articles, music programs and more for publication in upcoming issues Granted, we do not pay in emeralds or rubies, but we do pay... the highest rates in ^ the software industry!
, \ Interested? Call us to arrange the submission of your software for our evaluation, ill! A If Oz likes it as much as you do, we'll make you "an offer you can't refuse"—with \ no rainbow promises!
Call Michael Amarello, Editor at 1-800-831-2694 today!
SOFTDISK PUBLISHING P.O.Box 30008 • Shreveport, LA 71130 • 318-221-8718 they were aware of the problem (which only happens in one-megabyte Amiga systems), and they are working on a fix.
The problem is caused by memory fragmentation. The only workaround suggested was to save the drawing, reboot, reload Dpaint, reload the picture, and then change the font. A revision to repair this problem may be forthcoming.
Registered WordPerfect users have received the latest issue of ‘‘WPCorp Report”, which states that WPCorp has just released a '‘maintenance update” of WordPerfect. A quick call to WordPerfect technical support revealed that the program upgrade has not been released.
At the time the newsletter was published, die program was slated for an early April release. A few last-minute changes were called for, which delayed the upgrade release. But by the time you read diis, it should be available. Registered users can upgrade for .00. If you report a bug in your earlier version to technical support, however, there is no charge for the upgrade.
ARP Release 3 is now available.
ARP (AmigaDOS Replacement Project) version 1.2 was a popular accessory for .Amiga users who wanted smaller, faster C commands and a more consistent user interface than that provided by the commands on die standard Workbench
1. 2 disk. Several version 1.2 ARP commands do not work properly
under AmigaDOS 1.3, requiring modification to the ARP command
project. The ARP commands are freely redistributable, and can
be downloaded from all major information services.
DiskSalv 1.40 has been released. It fixes all known bugs of earlier versions, adds some new features, and enhances some old ones. DiskSalv is designed to read files from a damaged disk volume and restore them to a good volume. It can also restore deleted files, though it is not intended for such use. DiskSalv is more efficient and uses much less memory than Disk Doctor, the C command provided by Commodore for similar functions.
The Roger Rabbit game from Buena Vista has been upgraded.
Registered owners have been notified of the upgrade, which makes several improvements, not the least of which is the reduction of game startup from 6 to 3 minutes. Other enhancements have been provided, such as removing the reboot previously required before resuming play. In fact, according to the letter, multitasking with the game is supported.
The upgrade costs .75 for registered owners only. If you did not register your software, you will not be able to upgrade. Request for the upgrade must be made on die form provided, and the original disks do not have to be returned. For this reason, I cannot publish the upgrade address. If you wish to upgrade, you must send in your registration card.
That’s all for this month. If you have any workarounds or bugs to report, or if you know of any upgrades to commercial software, you may notify me by writing to: John Steiner c/o Amazing Computing Box 869 Fall River, MA 02722 ...or leave Email to Publisher on People Link or 73075,1735 on CompuServe.
• AC* GFA-BASIC 3.0 for the Amiga Boldly goes where no BASIC has
gone before.
• High-Speed Interpreter for easy program development Available
NOW from A Antic Software 544 Second Street, San Francisco, CA
94107 Call today to order: 800-234-7001 or see your local Amiga
dealer.
(GF920Q)
• Over 300 powerful commands
• FAST! - Execution times comparable to C
• In-line C and Assembler Commands
• Easy access to all Amiga libraries
• Extensive Amiga commands with submenus and built-in file
requester
• Built-in Text Editor with syntax checking, procedure hiding and
auto-indenting
• 400-page comprehensive manual
• Includes Run-Time Interpreter GFA-BASIC 3.0 is a trademark of
GFA Systemtechnik, Germany; Antic Software and Antic are
trademarks of Antic Publishing, Inc.; Amiga is a registered
trademark of Commodore-Amiga Inc. Amazing Productivity Reviews
Kind Words 2.0 by Marion Deland En using a word processor with
a dot-matrix printer, we’ve always had to choose between the
printer’s NLQ font and graphics—we couldn’t get both on the
same page. That is, until the intro¬ duction of The Disc
Company’s Kind Words. Recently upgraded to Version
2. O., KindWords can combine full color graphics with the
printer’s built-in font and KindWords’ own “Superfonts”, all
on the same page. Program designers Greg Tighe and Mike Rivera
deserve congratu¬ lations for this breakthrough.
This word processor is easy to learn and is clearly aimed at the new Amiga owner. The manual is well organized and written, widi clear screen diagrams, margin headings and a reasonably complete index. No one is credited with writing die manual, but whoever is responsible did a good job.
One dioughtful touch is the space on page 1 for you to copy down the serial number for customer support reference.
However, I would like to see more technical information included in the manaual for those of us who want it.
KindWords is not copy protected and diere are easy-to-follow instructions for installing the program on a hard disk by dragging icons. If you don’t have a hard drive, you'll really need two floppy drives or enough memory to use a RAM disk as an extra drive. One meg of memory is recommended — the program will run in 512K, but fonts, colors, graphics, etc., will be limited.
The screen On screen, KindWords looks a lot like Excellence. It has the same kind of ruler with buttons for justification, spacing and tabs, including decimal. You can also make the ruler invisible. You can use KindWords's screen colors, which are the standard Preferences colors with black type on a white screen, or your own Preferences. Personally. I liked the KindWords selection.
One thing I didn’t like about the screen was the way the screen buttons flicker in interlace mode. I like to use an interlaced screen for writing. You can see more of your work at one time, and it seems faster. However, this is a personal preference. I imagine most people won’t use an interlaced screen with KindWords. (There is no mention of interlace in KindWords, by the way—I used the Preferences interlace option.)
(continued) ‘\..a word processor that gives great printouts, is designed for the average user and is offered at a good price. ” Pise 1 TTH. 11 : ' TTT7TTT "ti'iTn'LJ. A ¦mam [jail jaa.
IIHDKOSDS FOHS I OK ELL' HHAH Tlis is Novell U Ibis is ttavei! If This it Hovelt t st mots m Mrvfcl.vM- 11' ¦* * t, ?
I-e•*s Figure one (left) The KindWords file requester occupies the entire screen.
Figure two (right) KindWords offers 3 text fonts, plus Math, Greek and Symbols.
BRAND NEW RELEASE Now, Amiga Programming is FAST EASY SMALL Jforth Professional 2.0 Interactive Programming Language for the AMIGA® FAST ¦ Compiles entire programs directly to AMIGA'S 68000 machine code in seconds, executes 2 3 times faster than other Forths and as fast as C. SMALL - Final programs as small as 3 Kilobytes EASY - With our tutorials, even novices can write programs, pros can use our development tools to simplify their work.
For a complete description of Jforth Professional 2.0 standard features, including: 1, Complete access to AMIGA libraries;
2. Royalty Free Applications: 3, source level debugger; A, IFF
toolbox: and, 6, assembler, write or phone Delta Research at
the address below.
Jforth Professional 2.0 interactive program¬ ming language for the AMIGA® is available at your local dealer. To order directly, send check or money order for Si79.95 (California residents only must add Si 0.80 sales tax to price) to address below. COD orders accepted, all orders shipped via UPS or USPS, allow 2-3 weeks for delivery. USA orders shipped freight prepaid, international! Orders, please add US S5.00 to remittance.
TO ORDER OR INQUIRE: DELTA RESEARCH
P. O. Box 1051 San Rafael. CA 94915 415-485-6867 AMIGA is a
registered trademark of Commo- dore-Amiga. Inc. Circle Reader
Service Card No. 201 Text entry The program defaults to your
Preferences margins. To fit everything on the screen, you need
to set the right margin setting at a maximum of 76. If you set
the margin wider, the program shifts one screen to the right
and back again at fee end of every litre—slowly. A word
processing tip: create a file wife fee defaults you use most
often, wife fee FORMAT selection from fee KindWords menu which
lets you set margins, justification and tabs, all at once.
Save this file on your data disk, then click on its icon to
load KindWords and open fee default file. When you start
typing, remember to save it under a different name so it
doesn’t overwrite fee original.
KindWords is easy to use but very slow in text entry. It's okay if you’re doing straight typing, but deleting just one character in fee middle of the text can pause the program for almost a second while it figures out the remainder of fee paragraph and fee page. This is a problem common to all graphics-based word processors, but KindWords seems to be unusually slow.
The program also has an odd trick of refreshing fee screen from the cursor on down, then going back to do the top part. This can be confusing, especially since the mouse pointer gives no indication that there is work in progress.
Several times I tried to sort out a screen full of broken or repeated sentences, thinking I had pasted text in the wrong place, only to see the screen suddenly right itself.
I also found myself repeating keystrokes after a long wait, thinking fee first hadn’t taken. (I know better, but I do it anyway!) But I've found a tech¬ nique that can help speed up text editing in graphics-based word processors. If you have to do a lot of editing in die middle of a paragraph, position fee paragraph at the bottom of fee page.
Then press RETURN right after fee part you are editing , to separate the rest of fee paragraph. That way, fee program doesn’t have to refresh the extra lines as you edit — just fee part you are working on. When you are done, delete fee RETURN to restore the single paragraph.
There are all kinds of ways to get around your KindWords document. You can move by character, by word, by paragraph, by line, by screen, all with ALT key combinations. Using the mouse can take forever, though, especially towards the end of a long document.
You can also select a word, a line, a sentence, a paragraph, a page, or the entire document with just the function keys. Nice. And much faster than dragging the mouse pointer to select.
Cutting and pasting is straightfor¬ ward, as the program uses fee system clipboard. You can also copy the mler
(i. e. format) from one part of the document to anodrer.
Only one file can he opened at a time—a limitation in an Amiga word processor— but the program will prompt you to save your data before closing one file to open another.
KindWords’ requesters are big—too big for my taste, especially since screen refreshing is slow. But I did like being able to cycle through directories by clicking on the disk button.
Advancedfeatures The “Advanced Features" section in the manual covers options like headers/ footers, find and replace, fee spell checker/thesaurus and print merge.
Headers and footers appear in text windows that are separate from the main document. Each can be up to 15 lines long and include page number, date and time. Headers and footers can be excluded from the title page. A 100,000- word spelling checker, based on the Proximity/Merriam Webster Dictionary, is also included. When I first tried Kind¬ Words, I carefully copied the dictionary files to RAM: and made the appropriate ASSIGNments. But I didn't need to do all that work—KindWords will do it for you.
If you have enough memory.
The spelling checker is slow but effective. I ran it on fee sample docu¬ ment included, and it choked only on names and the spelling of “word processor" as one word. I felt a little offended on behalf of fee document when the requester got to the end and announced “no more misspellings”. A word is not necessarily misspelled because it is not recognized by a spell checker! The thesaurus is also very good.
It lists a number of alternative mean¬ ings—each with the part of speech (noun, verb, etc.), the definition of the word, and several synonyms. When I tried it out, I got six levels for the word "‘original’', both noun and adjective, and four for “release”, all verbs. “Release” as used in the text was a noun, however, so tire thesaurus is not infallible.
Another improvement in Kind- Words 2.0 is automatic hyphenation. I was impressed with this feature—I rarely agree with the hyphenation choices made by word processors, but I checked ail tire hyphens in the first draft of dris review' against my dictionary and they all passed. In addition, the program offers a “soft" hyphen—you insert it manually and it shows up only if the word breaks at die end of the line. The manual offers a good tip. Warning that automatic hyphenation slows down typing, it suggests that you wait until you’ve finished the document, then turn on hyphenation to do the entire
document.
A find -and -replace option will search for a combination of characters and spaces, replacing them with another combination using die same typestyle.
You can't search for formatting codes like RETURN or UNDERLINE, but few word processors can. A “match case" option recognizes capital letters. A nice option is “whole word”, which finds die string only when it is a complete word, not when it is part of a compound word.
Mail merge (called “print merge”) is included and explained clearly and simply in the manual. You create a separate merge file either manually or by generating it widi a database. The first record lists the field names, known in KindWords as “merge words". Records are separated by two RETURNS, fields by eidier a comma or a RETURN. You can include a comma in a Field widi CTRL+, and a RETURN with CTRL-RETURN.
When you create the main docu¬ ment, you include the merge words surrounded by angle brackets. The document prints out with everything in the right places.
Graphics You can insert a graphic anywhere in your document. KindWords displays in medium resolution (640 x 200 pixels), and you can insert a low-res or medium- res image. KindWords will reduce a high- res image to medium-res by removing every other horizontal line of pixels. The program defaults ro 4 colors to conserve memory and speed, but you can set it to display up to 16. The screen display doesn’t affect printing; all the image’s colors will be printed within die limits of the printer.
Graphics can be resized (propor¬ tionately or not) or cropped. If the graphic is too wide for die page, KindWords will crop it automatically. If it’s too long, it will continue on the next page, but this will throw off die pagina¬ tion.
KindWords cannot display or print text on the same line as a graphic. This means that the whole width of the page is allotted for the graphic. However, you can move the graphic from left to right in that space, positioning it anywhere you like.
Fonts An important KindWords feature is its special high- resolution Superfonts.
You can choose from Roman 8, 12 or 14, Novell, a sans-serif font that comes in the same three sizes, Superscript or Subscript (both Roman 8), Math, Greek and Symbols and—Hallelujah—bullets! In two sizes! Also, arrows, comers and pointing fingers.
There is a catch, diough. These are the only fonts KindWords will recognize. If you don’t have them in your system fonts directory (or boot with die KindWords disk), they will be listed on the menu but KindWords will politely but firmly ignore your attempts to use them. And it will not recognize other fonts at ail. I tried several ways to outsmart it, but no dice. With this in mind, I would like to see The Disc Company add a larger headline Super¬ font —perhaps a 20 or 24 point size of Novell?
Printing There are several printing options with KindWords. Draft quaiity gives a quick preview, using low resolution printer fonts. Final quality uses the printer’s NLQ font in place of Roman 12 and KindWords’ liigh-resolution Super¬ fonts for the others. SuperFont quality prints the whole document in Super- Fonts.
I tested KindWords with both my printers, a Panasonic 1091, several years old, and a PaintJet. With the obvious exception of color, the Panasonic won hands down.
MEMORY r------ -i for your A500: 512k+Clock POPULATED: 9.95!
UNPOPULATED: .95!
Now Available DIRECTLY fromMicroBotics: the M501 Memory Unit!
• Exactly plug compati¬ ble with the equivalent, standard
Commodore memory+clock unit!
• Available with or with¬ out RAM! (Install your own chips and
save!)
Your Amiga®500 computer must have a standard memory and clock expansion to bring your system up to a full megabyte of internal memory and to provide the battery backed real time clock. Now you can buy this standard expansion unit directly from MicroBotics; either complete with memory installed or in the cost effective, socketed unit, ready to accept your own ram chips.
HOW TO ORDER: Send certified check or money order in US funds to MicroBotics, Inc. Allow up to 30 days for shipping.
SHIPPING and HANDLING CHARGES: No charge for USA. Canada add [dataz/press_magazine/Amazing_Computing/HTML_TXT/Amazing_Computing_Vol_04_06_1989_Jun.htm] per board: Overseas add per board. Price reflects a discount lor cash payment- add 5% of order to¬ tal for MasterCard/VISA orders. Please, no PO Box addresses. Dealer Inquiries Welcome.
II MicroBotics, Inc. 811 Alpha Dr, Suite 335, Richardson IX 75081 ORDER NOW! (214)437-5330 . ‘An*ga" ks a registered irademarx ol Ccmmctjore-Anvga Schedule Assistant PRINTERS THAT DO AND DON’T WORK WITH SUPERFONTS Voice ond Sound Reminders Create your own or use NAG PLUS library.
Perpetual Calendar -Enter IVS events per day.
Auto Dialer -Connects YOU. Not vour modem.
AUKXX Pori ¦Commands tiny timed event or action.
Notepad -Click on any word to open test editor.
Print • Search • And Much More.
Suggested Retail S79.95, Ask your dealer or contact: Gramma Software 17730 I Mil Avenue N.E. Suite 223 Seanle. Wushinpron OS 155 Phone #: (206) 363-6417 Qranjma Fax* <20613*1-0439 The manual includes a list of Kind¬ Words' “superdrivers"; Okimate_20.PRN Imagewriterll.PRN HP_PaintJet.PRN Okidata_293l.QUAD.PRN EpsonX-No_NLQ.PRN EpsonX.PRN Okldata_293I.PRN EpsonQ.PRN CBM_MPS1000.PRN Xerox_4020.PRN HP_LaserJet.PRN A note in the manual specifies (hat there are no special drivers at the moment these Preferences printers: for Aipltacom.Alphaproa01Brotlrer„HR-15XI, Qume_LetterPro_20 Other printer
limitations: The Readme file also mentions that non- graphics printers like the Diablo 630 and the Okidata 92 can't handle Superfonts. It's recommended that you use the IIP LaserJet printer’s own high-resolutibn fonts; a version of Superfonts for the LaserJet* is available from The Disc Company. They are also updating the DeskJet printer driver. The Xerox 4020 has a hardware limitation with Superfonts; it’s suggested that you stay with the printer's own fonts. The Okimate 20 has problems combining color graphics with text — tire recommendation is to.use a black ribbon and die black-and-white
Preferences setting.
The Final Quality output on the Panasonic was great. I took the example file, which was in the default Roman 12.
And scattered various examples of Superfonts throughout die text. In Final Quality, as promised, the Roman 12 was replaced by the printer’s NLQ font; all other fonts were Superfonts. The program had no trouble switching back and forth between them, even for just a single word. On tire Panasonic, the fonts looked good—clear and crisp, if a little denser than the NLQ font. This might be tire result of using a new printer rib¬ bon—since the printhead makes four passes in SuperFonts (vs. Two for NLQ), it makes sense that a new ribbon might be too much of a good thing. The superscript and
subscript, in Roman 8, were also clear and easy to read.
Superfont quality also gave good results, Roman 12 was not as nice a font as tire printer’s built-in NLQ, but the overall look was more consistent. Both modes showed graphics well.
The PaintJet was another story entirely. It was listed among lire “superdrivers", and 1 looked forward to getting the same high-quality output.
Instead, the Superfonts were sketchy and uneven—very disappointing. I tried printing in gray shades and black-and- white as well as color and experimenting widr dip switches, but tire fonts were die same in all of them. There is a “trouble shooting” section in the manual that offers fixes for common problems with specific printers, but there is no mention of the PaintJet.
Zorro II Prototyping Board
* Over 4400 Plated Holes on a 0.1” Grid.
* Gold Plated Rdgc Connector.
* "D"-type I/O Connector Pattern.
* Accepts 64 Pin DIFs and 14x14 PGAs.
* Low Inductance Power and Ground Pattern for High-Speed Designs.
* Designed for Maximum Fiexibility.
* Includes Mounting Bracket.
To order, send: check or money order for ,95 + local sales tax {California only) + shipping & handling (US: S3.00. Foreign: .00) in US dollars to: Celestial Systems Department M 2175 Agate Court Simi Valley, CA 93065-1839
(805) 582-0729 Product Info The Disc Company 3153 State Street
Ann Arbor, Ml 48101
(313) 665-5540 KindWords 2.0, .00 With most printers, however,
KindWords output looks great. Of course, there is a speed
trade-off. When you first print out in Superfonts, you have
to wait while the program checks for die Preferences
printer selection, loads its own “SuperdriverIf it has one,
then loads in the Superfonts. (The second time is much
faster.) Superfonts are printed with four passes of the
printer, so they also take time. But they’re worth the
wait.
All around, KindWords is a nice piece of work —a word processor that gives great printouts, is designed for the average user and is offered at a good price (.00 list).
• AO Finally...Amiga owners can again yell “Fore” because your
MEAN 18: Ultimate Golf™ has more courses to play than the other
guys!! Now you can order:
U. S. Open Courses I: Smnecock Hite, Menon, Winged Foot.
Bellerive & The Country Club (Brookline).
PGA Championship Courses: Oakmont. Firestone.
Pinehurst. #2, Oakland Hills & Southern Hills British Open Courses: Muirfietd, Sandwich, Carnoustie.
Royal Birkdale 4 Royal Lytham 4 St. Annes.
PGA Tour Courses I: Do-al, Torrey Pines, TPC Sawgrass, Cypress Point 4 Indian Wells.
Each 3V?" Diskette has five (5) great courses, just each disk, US currency. Send your check or money order to MOONLIGHT DEVELOPMENT, 329 Shoreline Place. Decatur, IL 62521. Please allow 2-3 ¦ weeks tor delivery.
Mun 1(t Oh h'JTI* Cnyf <$ * tiaOrmyvk ot ActOiiOC AMIGA 1 ,p I'iOemaf* Ql CommOOofe-A-v 5a Irvt A look at Pa^eotream desktop publisher fro Soft-Logik m by Barney Schwartz Well, it was COMDEX in Atlanta (1988) and there were two really neat items shown for tire Amiga. One was the LazerXpress. The other was a new desktop publisher from Sof't-Logik which would accompany LazerXpress. This new DP program would be right up there with Professional Page and would do more since it could access die Virtual Page. This should be die program to move the Amiga into desktop publishing against die Mac and Big
Blue.
Take heart, Amiganatics. Soft-Logik is shipping their desktop publisher. It is either in the mail to you or on its way to your favorite software supplier as you read this article. I have been working on Betas for over a year, and I have reccndy been writing the manual for the program.
Wliat I have discovered about the program follows.
The program should ship on two disks, but may expand to three very quickly because die program modules, fonts and utilities will grow to fulfill customer requirements. This program will let you write, format, design graphics, import and export text and graphics, spell check, auto-hyphenate, print to preferences or proprietary’ printers, treat text as a graphic object and much, much more.
Soft-Logik has "worked very hard to make this program a stand-alone desktop publisher, able to handle any task required, from the first thought to final printed output.
The first release of PageStream is not fully functional. Due to a great deal of internal reorganization and dedicated work by certain key employees, there are no major bugs left in the program. There are an amazing number of features to cover in a program of this magnitude, and die sheer enormity of the task caused serious delays in production. All the basic features work, and more modules are quickly being completed.
The first shipments include a coupon for a free upgrade. Now that is a class move diat, to my knowledge, no other company has offered. But let me get into the program.
PageStream is a lull-featured document processor. See the inset for a list of all features, all of which are available dirough pull-down menu options. Most of these options will open a requester window. For lack of an organized sequence in which to discuss the various functions, I will stick to menu order.
The .Menus; File menu The file menu contains Append, Export Text, and Export Graphics— interesting items not found in programs of diis type. The Append function lets you add to the working file from any source, whedrer it be another file, a picture, or text. You may append any or all of these at the current cursor position.
Export Text and Graphics do just what their names imply—they let you export text or graphics files to any programs in your library’. So you could ship a text file into WordPerfect or a graphic into DeluxePaint for later use or modification, and adjust the filenames accordingly from within PageStream without ever leaving your working document.
“...a full-featured, professio nal-level document production tool. ” Edit menu The edit menu contains two unique items: Insert Mode and Replace Attributes. Insert Mode switches between insert and overwrite, with insert as the default. No great shakes, but it does provide a menu function as a swatch so you don’t have to remember to depress right <Amiga> <I> to toggle between the two.
Replace Attributes lets you search for font size, style, and page requirements, then replace them as you choose. This is indeed a timesaver when you must perform repetitive changes throughout a document. For instance, suppose your document was set by a typist with all tides underlined, and you want to change die font and italicize all titles. You simply search for underlined words and replace each with the new italic font.
(continued) Layout menu IJKt- vi oitK'Tfi.iaa* Out Ventura wi-toi<r • The unique items within the Layout menu are Insert Page, Delete Page and Move to Page. Why do I regard these seemingly standard functions as unique?
Well, Insert Page lets you stick a page in the middle or beginning of your document. Try that with some of the other desktop publishers on the Amiga market and you end up with either an unsolvable crisis or a blown up document. After the insertion, PageStream will renumber your document.
The same procedure holds true for delete page. You can copy a page out to tire buffer and move it by simply telling die program which page to move in die active document. If you have ever forgotten to reflow text correcdy, you will surely appreciate diese functions.
The Set Starting Page Number is for diose times when your document may be larger than one file will allow'.
PageStream limits document size to 254 pages. If your document is larger than this, you must create separate files for each set of pages. In diis event you will need to start page numbering with a number greater than one. Or, if you use Roman numerals for an introduction and want to use Arabic for main chapters, you would follow' the same procedure.
View menu The view' menu lets users set how' much of the document can be seen onscreen. You may choose to view two facing pages at once. Facing Pages is nice w'hen you want to ensure that the figure you reference is in its proper place. You can choose Full Page, Half Page, Actual Size (according to the type and page size), 200%, User Define or Variable Zoom. Soft-Logik has definitely covered all the bases in diis department.
The unique item in diis menu is Set Greeking, which lets you tell die program the minimum and maximum sizes of text which wrill be displayed. In all other cases outside diis range, text will appear as black lines. This allows the operator to view7 text layout for white space evaluation and w'asted space inspection without having to read.
Style menu The style menu lets you vary7 font type and style, and supports all normal Amiga font styles (i.e., Bold, Underlined, and Italics). Then PageStream goes to the big city7. You may choose Backslant, Double-Underlined. Light, Mirror, Oudine, Reverse, Shadow, Striker- through, or even Upside-Down, And you can combine these text attributes into type ranging from nifty to bizarre.
Format menu The Format menu sets the form of your document. Use it to set left, center, or right block justify7. Set left/right indent amount and both line or character spacing. Identify7 super, sub, or baseline script, and change between each with this menu. Tell the program to use character or w'ord justification. In character justification, you spread the extra space required to justify1 a line between characters instead of words. At times diis may result in strange-looking spreads; at other times, it may be exactly just what you w7ant. This menu also allow's case changes for letters,
wrords or entire documents.
Text menu The text menu includes an item labeled TAG, a powerful macro designed to save time in formatting text, and to standardize large amounts of a document. A TAG defines die following text attributes: font type, size and attribute; letter spacing; leading; baseline offset; margin indent; paragraph format; justification: pattern fill and text color.
The text menu also includes spell checking, kerning, and hyphenation types. After a few7 sessions, it becomes second nature to automatically set this menu as part of your document opening routine.
Object menu The Object Menu is where you build objects. The Edit Coordinates, Align, and Text Runaround items deserve special mention. Suppose you build or import an object (better known as a picture or graphic), and discover iater that this object should be moved four pica and six points left, and then eight points up. If you could do this accurately, you would improve the symmetry of the page and save six hours of layout time. With PageStream, simply call Edit Coordinates and fill in the changes.
Align lets you line up a set of objects (PageStream can treat text as an object). Objects can be aligned horizontally, vertically, or with respect to both axes. Unlike some other programs, Text Runaround lets you set the direction of text wrap and the effective standoff of this wrap. The standoff ensures that text is not run into borders or graphics, where it would become unreadable.
Global menu The global menu lets you set global functions. Two areas in this menu deal with color. The first allows a change in screen colors. The second lets you define colors used in text and objects. That’s right, you get to make colors right inside the program after it's up and running.
You also get to tell the program what style of color (CMY, RGB or HSV). Then there are the Mechanical or Separable color types for overlay printing. If it comes from the rainbow spectrum, it is Separable; if not, it must be Mechanical (silver, gold, dayglow orange). You can edit the dictionary', set hyphenation rules, diange kem pairs, determine the measurement system, tell the program which printer to use, and build macros to take care of all those redundant tasks.
Oh yes, I almost forgot the toolbox.
This is a more or less the standard toolbox which sits where you tell it and lets you choose die tools to build your creations. The icons within are ail self- explanatory. The toolbox can disappear or be recalled at a moment’s notice whenever required.
Included items The program comes in a sturdy slip-case. The manual is looseleaf, sectionalized and sized for easy use. The manual will take you through an introduction, then into tutorials to familiarize you with program operation.
The heart of die manual is its reference section. Here you will find all the indepth operations of various menu functions and options available to the operator.
There is also an area which deals with overall publishing requirements, techniques and methods of operation, as well as a section of helpful hints, tricks and tips to make your life a little easier.
As I have said so many times before, desktop publishing requires a lot of skill, artistic aptitude and creative ability. If you are lacking in any of these areas, you will face one of life’s greatest challenges when you decide to publish on your own.
System requirements Although you can run the program on a 512K Amiga with one disk drive, those of us who lived with small systems know this isn’t any fun, It is highly recommended that you have, at bare minimum, one meg of RAM (the more the better), two floppies (a hard drive couldn't hurt), a laser printer for final output (dot matrix is OK, but. Oh, so slow), and a graphics tablet if you are serious about doing your own art. You may think about getting a LazerXpress for fast output, PageStream will talk to the virtual page, but the LazerXpress may not meet your reproduction requirements. Of
course, if you are serious about being self-sufficient, you must eventually invest in a photo-typesetter to produce repro.
Although small black-and-white jobs can be run on a laser, real work must be done on high-density negatives for color separations and/or long-run metal plates.
Program operation The first thing to do after you boot your backup copy of the program is select all Global parameters. If you own only one printer, you will only need to set the printer configuration once. Xext enter Set/Save paths and tell the program where to find the different directories you need. Set your desired measurement system before you open your document.
You may choose from any typesetting measurement systems including PICAS, DIDOTS, and CICEROS.
The program will readjust tilings after die fact, but get in the habit of doing tilings correctly. This may save you a lot of anguish later. Besides, there are enough opportunities for error in a program of this scale.
You will eventually build a library of colors for objects using this menu. If you are concerned with correct spelling, you will spend some time adding or correcting words in die program dictionary. This will occur as you build files and recognize that not all the words in your vocabulary are in the dictionary supplied.
(continued) Opening a file is a simple matter of choosing New or Open from the file menu, If you choose New you will be greeted by a window of standard Amiga gadgets on a grid representing a blank page. You should create a page format from scratch with create columns, or open your previously created Master Page. You must have a box open to begin text or graphics input.
Getting to icork Remember... Dedicated to the AMIGA Nothing but the best!
I usually start by selecting Import Text. This brings tip a requestor which asks for tire file format of tire job to be imported. You may choose ASCII, WordPerfect, or some as yet undetermined formats.
The requestor lets you bring in formatted or unformatted text. If you have ever been forced to realign all those sentences brought over from what you drought was a text-only save of WordPerfect, you will definitely appreciate diis option. If you know you will be importing body copy, and you have a TAG set for this, you can save hours by importing this file after the TAG is selected. It is much simpler to go back and change attributes on the titles than to reset the entire body copy after an import.
By the way, when you are deciding on TAG parameters, PageStream is the only program which allows user modifications like x and y adjustment of font size, leading and kerning adjustments to 1/3600 of an inch, and 360-degree rotation of text (as individual letters, words or whole text areas).
PageStream uses proprietary, scaleable fonts. This means no matter what size font you call (between 2 and 300 points), each character is smoodi on the final output device.
It also means you are limited to PageStream fonts widi in your document.
Some people will balk at this, but let's face fact-—if you use a laser, you are limited by the fonts available in the printer. If you use a dot matrix, you are limited to die fonts available from the screen or printer ROM. In this case, you will get ten very good-looking fonts with the program, and Soft-Logik will provide a library of font disks for use as program sales expand.
Adding a graphic Now it's time to import or build a graphic to support the text on this or a facing page, Yes, that's where pictures should be located—on the page or on a facing page. Have you ever read through a document that keeps referring to an illustradon diat's nowhere near the text?
CO MMO D O I I /VMJCA^ The Memory Location If so, you know exacdy what I am talking about, 396 Washington Street Wellesley, MA 02181
(617) 237 6846 Call the AMIGA Experts!
Authorized Amiga graphic design dealer.
Our crew has over 30 years total combined experience with the Amiga!
We ship UPS Mon. thru Fri. Store hours: 10-6 Mon.-Thr. 10-8 Fri. 9-5 Sat. Commodore authorized repair in store.
Low flat rate plus parts. Warranty service.
If you import graphics, first open a box in which to place the graphic. We do not have a clipboard to work in here, but it is nice to insert die graphic and watch its effect on the surrounding text.
You select the size of the box and, if required, adjust positioning with edit coordinates.
Import Graphics will open a requestor which asks for information on file format. This is necessary because you may dioose between IFF and odier file formats. The program uses this information in its sizing algorithm (the rouune which decides how to put the picture in the box you defined and still not lose any detail). That’s right, PageStream will take almost any size picture, reduce or expand it, and put it in your box with all its original detail if possible.
Hopefully, while you were setting Edit Coordinates in the Object Menu, you also set Text Runaround. If not, die graphic covered pan of your text and you must now fix it. You say you didn't import a picture? Instead, you are drawing your own from within tile program. Good for you. To select an object, use the Toolbox (die thing with the miniature hammer and screwdriver).
Use the Object Menu to select Fill Style and color. Draw your object. Go back to the Object Menu if you must Align, Rotate, lock, Unlock, Duplicate, or Reshape the object. If you have a group of objects you feel should be moved as a unit, use Group to coagulate them, or
• A Figure Construction Set!
• A Drawing System!
• Over 500 parts!
• Easy to use!
• Simple Rotate, Cut, & Paste!
• Anti-aliased!
• Uses no memory!
Instruction Book included!
Not Expensive!
Just .50, check or money order includes Shipping and Handling.’ The Picturebox, 8824 David Ave. St. John, MO 63114. Allow time for deli very. Foreign buyers, please add appropriate postage.
‘Missouri Residents musl add S1 25 sales tax.
Artwork from BuilcTEm, printed with Epson LX-80 You have a choice of any preferences-supported printer. You may also use a proprietary printer supplied with PageStream. Currently, the program supports Epson X or Q, C.ITOH, Toshiba, NEC, Xerox. Postscript, HP Laser and LazerXpress. This list is growing quicldy.
Need "People” in your programs?
The proprietary drivers provide much better gray scale and finer quality text than preferences could ever achieve.
If you are doing color overlay plates, you should use the proprietary drivers to achieve die highest quality. If you need a driver, Soft-Logik will gladly build one for you.
Overall impression PageStream is a full-featured, professional-level, document production tool. Although professional in application, it is extremely easy to use.
Keep in mind, it is a complex program encompassing die entire gamut of publishing tools. Ir will take time to become proficient in all its facilities. This first release may introduce many new ideas and operadng techniques which require some adjustment on the user’s part. These techniques and facilities are standards within the publishing community and must be learned if you are serious about document composition.
As Soft-Logik continues to add to the program, and provides competent customer support, they are assured a place of honor in the publishing arena.
Ungroup to dissolve them. Oh, I aimost forgot! You can import pictures from other machines. Presently IMG and Pi3 files are supported.
When you are satisfied with this page, move on to the next. Keep this up until you have completed your document. Concentrate on getting the document together in a logical order. Try to ensure that graphics and text are coherent and aligned properly. If necessary, insert, delete, or move pages and objects.
You may find it advantageous to relink columns so important parts of various stories or articles begin toward the front of the document and continue within internal pages. You can do this with die column link (Set Text Routing) selection in the Layout Menu. It is much more efficient than creating new pages.
Besides, you need a hook in the document for important items.
PageStream is constructed as a professional tool for document makeup rather than a Hype piece of page makeup software.
Output devices Now that you have composed your masterpiece, its time to do what you started out to do in die first place—print it.
THllJ'in* 101 K IMAtiK IS Ul R HI 'S/XPS.s Wmmw hi/hid am rates rn tut /\t
- H t'|i/ KH.iM MU* i » V \ Jt'tl tffo, iim if'•i jot r mit,t
ttt i % via/ itn anti' /wr/ Hu. A m ^l //1 SLIDES .4 V) AMIGA
It7 FORMAT
- HWf. EMU A it 4/ EHUlli. T ic
- si pi u mi maps
- UK,! 111 II U(.H AMAZISG RESOI. UTIOS Ml Lit tMACKS PER SLIDE
PARC A AM) VISTA III PS POO Ttjings to come Some minor bugs
have surfaced.
Corrected versions of the program will be shipped to registered owners within a couple of weeks, Soft-Logik is redefining customer support and quick reaction to customer needs. It may be a little hard to get through on the phone, but have patience. If they cannot solve your problem immediately, they will get you an answer as soon as possible. They will not blow you off or leave you hanging.
Product Info Soft-Logik Publishing Corp. 11131F South Towrte Sq. St. Louis, MO 63123 PH (314) 894-8608 BBS (314) 894-0057 PageStream SI 99.95
• AC* Amazing Book Reviews Tracing in by Michael Morrison AC
Technical Editor The process of ray tracing traces the path
each beam of light travels, from source to object, from object
to destination. Because of this, the picture produced has all
the qualities of a real three dimensional object including,
surface texture, shadows, colors, transparency and
reflectivity, to name a few.
But anyone who has tried to produce a ray traced picture or who has seen one produced, realizes it can take an extremely long time to generate ray traced pictures. In the past, ray tracing programs were written in compiled or assembly languages to speed the process.
Amiga 3D Graphic Programming in BASIC contains a lot more than two BASIC programs.
Amiga 3D Graphic Programming in BASIC There is a com¬ plete chapter with indepth coverage of the basics of ray tracing.
Abacus to the rescue. To stifle those who said it couldn’t be done, Abacus has released another Amiga specific book, Amiga 3D Graphic Programming in BASIC. The book includes two programs, Editor and Tracer, that allow you to create ray traced pictures that will rival any other program available. And to top it all off, tire programs are actually written in AmigaBASIC!
You are probably thinking that it can’t be done, that the pictures generated are second rate. Not true. The pictures included on the demo disk we received are very nice. You’re probably thinking it would take forever to ray trace a picture in a program written in AmigaBASIC.
This time you are right and wrong. Some of the demo pictures took 3 weeks to finish! But, when generated with a compiled version of tire program, the same picture took only 6 hours. That is comparable to other programs written in other compiled languages.
Amiga 3D Graphic Programming in BASIC contains a lot more than two BASIC programs. There is a complete chapter with indepth coverage of the basics of ray tracing. And don’t let the drought of large mathematical formulas scare you. Although ray tracing uses a lot of math, the book breaks the formulas down to smaller, more easily digestible chunks.
Overall, it looks like Abacus has released another fine book that any semi-serious programmer will want on their book shelf. The Abacus book stands alone as the only book on ray tracing written in layman's terms.
My only suggestion to anyone who buys the book is to spend the extra money and purchase the optional diskette. This will save you hours of typing and allow you to start ray tracing right away. The disk also has bodi the Editor program and Tracer program compiled under AC/BASIC VI.3 along with some previously defined objects that you can use.
¦AC- Searching For A Little Summer Excitement Insight into the World of Freely Redistributable Software for the Amiga™ by C. W. Flatte Fred Fish Disk 201 Draco An update of Chris Gray's Draco.
Improvements include support for floating point, register variables, code optimization, improved call/return standard, and more. This is version 1.2, an update to die version on disk #76.
The documentation is on disk #77. By Chris Gray.
DropCloth This program allows you to use a 2- bitplane (4-colored) IFF picture as die image on your Workbench. This is version 2.4 and it’s shareware. By Eric Lavitsky.
Fred Fish Disk 202 SlavicFonts A collection of Slavic fonts from Robin LaPasha. These are version 1.0, and some can be seen by clicking the two icons included.
Vlt A VT100 emulator and a Tektronix emulator. The \T100 emulator is an enhanced version of Dave Weckeretal’s VT100 emulator. The program has an Arexx port and supports XMODEM IK/ CRC and Kermit protocols. Version 3-656, binary only. By Willy Langeveld.
Fred Fish Disk 203 Examples Assembly and C code examples, includ¬ ing some old favorites (like SpeechToy and YachtC3) rewritten in assembly language. Includes a replacement for die official audio device, R. J. Mical’s file requester rewritten in assembler, a Type and Tell program that show's how' to install a custom input handler ahead of intuition, and more. Authors: Jim Fiore and Jeff Glatt.
GurusGuide Source files for all examples published in the “Guru’s Guide, Meditation *1: Interrupts” by Carl Sassenrath, die architect of the Amiga’s low-level multi¬ tasking operating system and designer of Exec. By Carl Sassenrath.
Isam A library of routines to access relational database systems using the Index Sequential Access Method (ISAM). This is beta version 0.9. By Kai Oliver Ploog.
Fred Fish Disk 204 FileReq Simple file requestor written in C. Must be run from the CLI. Source code included. By Jonathan Potter.
GtmGrep The grep program from the GNU project.
Replaces grep fgrep, egrep, and bmgrep.
Version 1.3, includes source. Authors: Mike Haertel, James Woods, Arthur Olson, Richard Stallman, Doug Gwyn, Scott Anderson and Henry7 Spencer.
HAMCu Installs a custom copper list for the current active view' that shows all 4096 colors. A neat effect drat show's off the color capabilities of the Amiga. Running the program again changes everything back to normal. Source code included.
By Jonathan Potter.
Image-Ed A shareware icon editor allowing you to design your own icons. The author suggests a shareware donation of S20 that will get you the source listing and registered as a user. Version 1,8, binary only. By Jonathan Potter-.
JPCLOCK A clock program loaded with features.
Source included. By Jonathan Potter.
MouseBounce A small hack that causes your mouse pointer to bounce around on die Workbench screen. It will continue bouncing until you close the Mouse¬ Bounce window by clicking on the close gadget. Each click causes die pointer to move faster. Source included. By Jonadian Potter.
Poplufo Puts an icon on die Workbench window' tiiat, when clicked, opens a window that gives you information about the status of your devices and memory. Allows you to display die bootblock and check for all currently known viruses. If found y'ou can install that disk. This is version 2.9 and includes source. By Jonathan Potter.
PopDir Similiar in appearance as Poplnfo, but allows you to get a directory of all available volumes. Audior: Jonathan Potter.
Teacher You’ll just have to run this one and see for yourself. Includes source. By Jon¬ athan Potter.
Fred Fish Disk 205 Bally Amiga port of the former arcade game named Click. This version is an update to the version released on disk -181. It has instructions written in German and is shareware. By Oliver Wagner.
BattleForce A nicely done shareware game that simulates combat between two or more giant, robot-like machines. This is the latest version available, version 3.01. By Ralph Reed.
Chess Update to the version first included on Fred Fish disk =96. It has been upgraded to use an Aniga Intuition interface. Has load/save, hint, switch sides, skip move, color palette and many more features.
Version 2.0, Author: John Stanback; ported to Amiga by Rob Leivian. Version
2. 0 upgrades by Alfred Kaufmann.
Fred Fish Disk 206 All this material is from the 1988 Badge Killer Demo Contest (BKDC).
Brotvnian A demo based on both fractal theory' and Brownian motion. Creates bizzare moving graphics picture. Includes source. By John M. Olsen.
Hawk A stereo image of a hawk. Requires red/ green stereo glasses for effect, but looks nice even without them. Author: Unknown (no documentation included).
MentFlick This program treats your memory as a scrolling viewport. Interesting to look at.
By Jim Webster.
PeX Various demos strung together to show different aspects of the Aniga’s graphics.
If die source wras included these would be a great tutorial. Nice job. The system crashed wrhen I double-clicked on die Bugscript icon. Author: Unknown.
Pictu reGa rden A demo apparendy done in compiled BASIC. Interesting slideshow. Author: Unknown (no documentation included).
StereoDemo A demo of stereoscopic graphics, written in assembly language. Requires red/ green stereo glasses to view. Includes sources. By David M. McKinstry.
Triple Three demos showing some of the Amiga’s graphics and sound capabilities.
Unfortunately, only binary code in¬ cluded. By Tomas Rokicki.
Fred Fish Disk 207 Coyote A nice animation with two cartoon characters that look a lot like Roadrunner and Coyote. Good job. The animation is large and distributed in "arc format”, although I couldn’t find arc on the disk.
This is a 1988 BKDC entry' by Gene Brawn.
Fred Fish Disk 208 AsteroidField An animation of a spaceship w'eaving through a cluttered asteriod belt. This is a 1988 BKDC entry by Michael Powell.
Fred Fish Disk 209 Bowl A Sculpt-Animate animation that shows three colored balls circling the rim of a mirrored bowl. Rendering the animation took about 2 weeks. Distributed in zoo format because of its size (zoo program included for easy unpacking). This is a 1988 BKDC entry by Vem Staats.
Dps A program designed to work with the PrintScript program, a commercial PostScript interpreter for the Amiga, to provide a page previewer. Includes source. By' Alen Norskog.
Which hard disks for AMIGA?
Curious?
Any {IBM compatible) with our A.L.F.!
(Amiga Loads Faster) Safer with CHECKDRIVE.
Faster with FASTFILE-SYSTEM.
50% more MB wiih RLL-CONTROLLER.
More economic - even defective hard disks can be used.
For more information: Prospect Technics Inc.
P. O. Box 670, Station H Montreal, Quebec H3G 2M6
Fax:(514)876-2869 BSC Biiroautomatlon GmbH Postfach 400368
8000 Miinchen 40 W-Germany Phone: (89) 308-4152 Fax: (89)
307-1714 Fred Fish Disk 210 Calc A very nicely done
scientific/program¬ mer/plotter calculator. The scientific
portion has most of the operations found on the more popular
handhelds. The programmer portion has number base conversions
that allow conversions between hex, binary and decimal. The
plotter portion will plot equations. Other features include 26
memories, full mouse or key'board operation, pull-dowm menus,
and iconizaiion. By Jimmy Yang.
LabelPrint A handy program that allows you to print labels for your disks. By Andreas Krebs.
NuHand An animation of a large hand scraping its fingernails across an imaginary surface, Although the demo has sound, I w'as expecting it to be more like the sound that sends shivers down y'our spine when you run yrour fingernails dowrn a chalkboard. This is a 1988 BKDC entry by Bryan Carey Gallivan.
The Amazing Computing Freely Redistributable Software Library announces the addition of... New Orleans Commodore Klub's inNOCKulation Disk Version 1.5 To help inform A miga users of the newer Amiga viruses and provide them with the means to detect and eradicate those pesky little critters!
Files and directories on the inNOCKulation Disk include: Virus _Texts (dir) Various text files from various places (Amicus -24, PeopleLink, and elsewhere!) Describing the Virus(es) and people's experiences and their recommendations; TVSB “The Virus Strikes Back”: satirical text describing future efforts to rid the universe of the dreaded (silicon) viruses! Interview with the alleged SCA virus author!
WB VirusCheckers (dir) VirusX3.2 Runs in fee background and checks disks for viruses or non-standard boot blocks whenever they are inserted. (Recognizes several viruses and non-standard boot blocks. Removes virus in memory. Has a built-in “view boot blocks” & other features.)
Sentry Revision of VirusXl.OI in Lattice C. Vie ivRoot Highly active mouse-driven disk and memory virus-checker which allows you to look at the pertinent areas (useful in case you supect a NEW virus!)
VRTest3.2 Watches memory for viruses; will alert fee user and allow their removal if found. Can check & INSTALL disks, etc. CLI_VirusCheckers (dir) AntiVirus II From The Software Brewery (W.
German). Disables a virus in memory.
Clk_Doctor3 Corrects problems with the clock (caused by malignant programs, perhaps not really a “virus") (A500 & A2000) Guardian 1.1 Checks for attempts at viral infection at boot! Allows you to continue wife a normal boot (if desired). Includes a small utility program to permanently place die program on a copy of your kickstart disk.
KiUVirus Removes (any?) Virus from memory.
Vcbeckl2: Checks for SCA vims on disk or in memory.
Vcheckl9 Checks for any virus or otherwise non¬ standard hoot block.
VirusKiller A graphically appealing and user friendly program by TRISTAR.
Boot-Block _Staff SafeBoot2.2 SafeBoot will allow die user to save custom boot sectors of all your commercial disks and save diem for such an emergency. If a virus somehow manages to trash die boot sectors of a commercial disk, just run SafeBoot and it will restore the boot sectors, therefore saving your disk!!
Virus_Alert V2.0.1 Yet another anti-virus program with a twist. Once installed on your hoot disk a message is displayed just after a warm or cold boot notifying die fee user that the disk and memory are virus-free, and forcing a mouse-button press before continuing.
BootBackl Saves and restores boot-blocks, Runs from CLI only.
Antivirus akaAVBB Includes SEKA assembler source.
Xboot Converts a boot-block into an executable file, so you may use your favorite debugger (Wack, Dis, ...) to study it.
The inNOCKulation disk also includes icons and arc files.
6. 00 includes postage & handling (.00for non-subscribers) To
order the inNOCKulation disk, send: $ Amazing Computing
inNOCKulation disk orders
P. O. Box 869 Fall River. MA 02722 Roomers by The Bandito [The
statements and projections presented in "Roomers"are rumours
in the purest sense. The bits of infomation are gathered by a
third parly source from whispers inside the industry. At press
time, they remain unconfirmed and are printed for
entertainment value only. Accord¬ ingly, the staff and
associates of Amazing Computing ™ cannot be held responsible
for reports made in this column.] Commodore watchers are still
looking for Big C to move Amiga 500's into the mass market
stores for the summertime. But it looks like Commo¬ dore isn’t
the only computer maker considering the mass market. IBM will
be putting PS/2 Model 25's and 30's into Sears and Target
stores. If this works, they plan to expand their mass-market
penetration to other, as yet unnamed outlets. This step is
designed to take away some clone sales and also to prepare the
home market base for future IBM produce.
Speaking of future IBM products, the top-secret computer the Bandito mentioned some time ago is still progressing. The Bandito has learned that it's now codenamed HPC, for Home Personal Computer. IBM has presented the specs to major software developers, particularly the entertainment software companies. There is plenty of interest— but skepticism—about IBM’s ability' to market computers to the home audience.
(Memories of tire Pcjr and chiclet keyboards come to mind.)
According to those few who have seen it, die machine is technically impressive. The Bandito's informants speak of integrated DVI technology with a hot sound chip, MCGA graphics and animation coprocessing for somewhere under 52,000 to make a killer home/ educadon machine. As you may recall, DVI (Digital Video Interactive) technol¬ ogy is a compression scheme for putting live video onto CD-ROM disks. Intel now owns die rights to DVI, and lias announced their intent to make it into a one-board system by 1991 (and possibly a motherboard item 011 computers like the HPC). Of course, this doesn’t
mean diat IBM will necessarily bring this technology to market in drat fonn.
They're probably just testing the waters, and what they finally decide to do is anybody’s guess.
"What would an HPC do to the .Amiga market? That depends on the price point, and what Commodore does in response. The HPC could be a real threat if it was priced aggressively. It might be a good idea to get a CD-ROM player for the Amiga out soon, so when die price comes down there will be a market for Amiga CD-ROM's. Shouldn’t be too difficult to get the .Amiga to recognize the High Sierra format and keep track of emerging new standards.
With the Amiga’s sound and graphics capability1 added to the tremendous storage of a CD-ROM, you’ve got a killer combination. Let’s hope Commodore’s not asleep at the switch on this one.
Commodore R&D spending Speaking of Commodore, many developers are starting to wonder just what is going on. What is their strategic vision for the future? How will they answer the challenges posed by Apple and IBM? These and many other ques¬ tions will be hotly debated at the Developer’s Conference in San Francisco this June. One of the things that has developers worried is Commodore's lack of commitment to research and develop¬ ment (R&D). For comparison, analysts usually' look at R&D expenditures as a percentage of total revenue. For instance, IBM spent 10.2%, Sun 13-3%, and Apple a paltry
6.7%. What did multi-billion- dollar Commodore corporation spend? A staggering 1.7%, The number looks even smaller when you consider that some of it was spent on C64 products and MS-DOS compatibles, Commodore’s other two product lines. Small wonder that developers are concerned about Commo¬ dore’s commitment to tire Amiga’s future.
Will tire situation change for tire better?
Perhaps DevCon will provide some answers.
The Bandito wonders if that R&D figure includes payments to Amiga developers working on key thlrd-pany software and hardware, or if that is tucked away' in some other part of the budget.
The Amiga, once far ahead of other computer systems, is starting to fall behind. The introduction of the A2500 helps, but it's not enough. System throughput is critical, as is speed of memory chips and data storage devices.
The Amiga, with its DMA channels (which are lacking on many so-called sophisticated computers like the Mac 11) has a good start on being faster than its rivals. One of the most important features of the NeXT computer is its great system throughput, but the overhead with the system software means the advantage is mostly' lost.
Part of the difficulty of creating newer, faster computers is that yrou have to speed up everything. Dropping in a 50 Mhz 68030 won’t help as much as it could unless you add faster memory' chips, a 32-bit bus, etc. It’s like dropping a jet engine into a Volkswagen—it’ll go faster than normal, but to go all out you'll need better tires, shocks, brakes, a heavy'-duty frame, and so on.
To be a real powerhouse, the Amiga 3000 needs not only a lot of hardware design, but system software that doesn't slow things down. That takes a great deal of work. With Motorola announcing the 6S040, it seems to some that Commodore should maybe skip the 68030 Amiga and go straight to the ‘040.
No way, says die Bandito. The 68030 is cheaper, and low cost should remain one of the .Amiga's strong points.
Commodore hasn’t even begun to address networking and connectivity issues. Sure, you can buy an expensive (continued) 0 I ©
• Home Or Business Alarm
• Traffic Flow Monitoring ¦ Log And Time Stamp Events
• Attendance Counting
• External BSR/X-10 Control
• Light Level Detection
• Graphic Control Panel
• Menu And Mouse Driven
* Modem Alert Option
* Digitized Alarm Effects
• Synthesized Computer Speech
* Hot Key Recall Sequence Completely MULTI-TASKING with hooks to
start other computer programs when a BREACH is detected. Uses
of the Intruder Alert Monitor are only limited by the Ingenuity
of YOU, the user.
BBS?
3014 Alta Mere Dr., Ft. Worth, TX 76116 Phone:817-244^1B0 Ethernet card from a third party. But what about a network solution provided by Commodore? Something inexpensive like AppleTalk would be nice. And built- in file transfer software would be handy, too. Get with it. Commodore, or join Atari and the slide rule.
Other companies are pressing ahead with important technologies. A small firm called UVC Corp. has more advanced digital video compression schemes than DVI, further muddying the already murky waters of CD-ROM and all its variations. What’s the latest score?
Well, although Philips is still promising to bring CD-I to market in early 1990, it seems to be a dead duck as far as software developers are concerned.
Electronic Arts has reportedly cut back on its CD-I research efforts, and other developers are adopting a wait- and-see attitude before they spend more money on CD-I. They’re ready to develop for some sort of CD-based system, but they want to wait until a standard emerges. The Bandito's guess is that things won’t be sorted out until 1992 or so, but that there will be a standard to create a big market lor software.
A new technology being developed at Oak Ridge National Laboratories uses a laser to polarize individual molecules on a disk for data storage. This leads to storage densities many orders of magni¬ tude greater than those currently achieved. How does hundreds of trillions of bytes on a CD-ROM sound? That's terabytes of data. “Hey, where’s my Libraiy of Congress disk? I can't find it anywhere.” Who cares if it's only write once—you can’t live long enough to create that much data (well, OK, maybe if you use a video camera).
Even more new technology': ISDN (Integrated Systems Digital Network) is on its way, and it's going to mean big changes in the way we compute. Among other filings, this new telecommunica¬ tions standard uses standard phone lines for 144,000-baud data transmission, and on fiber optics it can do megabaud transmission rates. No more modems— just plug your telephone into your computer and send files about 60 or 120 times faster than you’re used to.
Once file fiber optic-lines are everywhere, videophones will be easy to do. Maybe they’ll make a videophone card whose output shows up in a window on your .Amiga screen, which would be fun. Then people would sell software that makes your outgoing image look like a movie star, or lets you paint over an incoming call. What happens if you drag somebody’s picture into the Trashcan? The possibilities are endless.
Apple II going bad?
The Bandito has already told you the Apple II line may cease production by the end of the year, according to some reports. Well, other sources are confirming this, and reports are even being published as news stories in trade journals. Of course, Apple stoutly denies this. When a computer is obsolete, you might as well sell as many as you can and let it die a natural death when retailers stop ordering it.
The Bandito figures Apple will keep selling members of the Apple II line for another year or maybe even two, Then one day somebody in the press will notice that nobody's bought an Apple II for months, and Apple stopped making them a while before. (Not unlike what the Bandito thinks will happen to the Commodore 64 in the same time period.)
The story goes that despite one or two loyal engineers, Apple is basically ignoring the Apple II products, and therefore the iIGS Plus may never see the light of day (besides, it would compete against the color Macintoshes).
The pressure is growing for Apple to release a low-cost Macintosh, and at the same time developers are abandoning the Apple II market. Software sales for Apple II series computers are dropping faster than an Atari earnings report. If all you develop is Apple II software, then Apple doesn't really want to talk to you anymore. Ail their energies are directed at the Macintosh.
As part of fire effort to allay fire nasty minors regarding the Apple II's health, Apple recently announced a genlock card for the Apple lie and Ilgs.
Gee, what a great idea—wonder how they thought of it? It’s interesting drat Apple always refers to it as a “video overlay card” and never uses the word “genlock’’. The price? A mere 9- It’s almost cheaper to buy an Amiga 500 and an AmiGen.
(continued) COME ABOARL and We'll Blow You Away in City AmiEXPO The Amiga Personal Computer Show and Conference July 28 - 30,1989 The Chicago Hyatt Regency 151 East Wacker Drive Chicago, Illinois 10,000 Attendees and 120 Amiga Companies Will Be There.
DON'T MISS THE FLIGHT!
Admission includes the Exhibition, Seminars, Keynotes & Amiga Artists Theatre!
120 Amiga Exhibitors Featuring State of the Art Software and Hardware, at the lowest prices!
Master Classes Available in Amiga Graphics, Video, Programming, Animation, Music and Publishing!
Seating for Master Classes is limited; call for schedule and a vailability before registering.
PRE-REGISTRATION DEADLINE IS JULY 14,1989 ' For Hotel Reservations Call the Hyatt Regency at (312) 565-1234. Deadline for hotel reservations is June 26,1989.
For discounted airfares, call American Airlines at (800) 433-1790 and give them this ID: S-83536.
Register by Mail, or Bring This Coupon to the show or Call 800-32-AM1GA Nationwide (or 212-867-4663) For Your Ticket to The Amiga Event!
I V-- * -.....i. m irvnn .....^ I Master Class(es) - List Class and Time - Each I__ I Yes, I want to come to AmiEXPO - Midwest Friday Saturday _ Sunday STATE Make Check or Money Order Payable to: AmiEXPO 211 E. 43rd St., Suite 301 New York, NY 10017 Bring Coupon to the door and get these Pre-Registration Prices!
NAME _ COMPANY ADDRESS CITY One day - Two days - Three days - Registration is Additional At The Door ZIP For MasterCard or VISA Payment Expiration Date_ Account Number.
Name as it appears on card:.
Signature_ Total Amount Enclosed m HIM HBM THINKER Myrerte&l for AMIGA Hypertext and Outline Processing combined.
Powerful Hypermedia application combines word processing and database ideas into an Idea Processor. Link to applications, pictures, Unleash Creativity Organize Thoughts Write books, papers, documentation, articles; build storyboards, programmed lessons, and interactive help; organize pictures, ideas, and reference material.
New Features No Credit Cards „ CA res. Add tax Demo 30 day guarantee Disk S5 Add S5 for COD Poor Person Software 3721 Starr King Circle, Dept 5 Palo Alto, CA 94306
(415) -493-7234_ Another sign of the demise of the Apple II
line—the two leading Apple II magazines, A+ and
InCider(bitter rivals throughout their history), are
merging.
Where that leaves Bob Lindstrom, tire Bandito isn't sure. Bob is/was tire editor- in-chief of A+, w'hich was exceedingly strange because Bob is secretly an Amiga fanatic.
The Bandito heard that Bob even kept an Amiga at the A+ offices, where no doubt it made all those poor little Ilgs's green widi envy. Bob is also a hot composer who created the music for Rocket Ranger, among odier tides.
Maybe he'll cut an album of software music. Say, how about Cinemaware’s Greatest Hits on CD? The Bandito, for one, would be happy to hear his favorite game music while working away. If you can’t play die game, at least it’ll sound like you’re having fun.
Epyx recently cut loose some of the contractors doing various sorts of work for them—mosdy programming.
Looks like their creativity products division is taking the brunt of die cutback. Shadowy reports say there's no effect on the Skunk Works where the top-secret device is taking shape.
According to a few bytes of data leaking out of their network, most of the engineering problems of the TSD (top secret device) are under control—it’s the marketing issues diat are being trouble¬ some. Like how much, and where’s the software coming from, and when do we ship, and where do we distribute it?
The Atari-Nintendo legal batdes have also muddied the waters for any new videogame entries. But if any product is to make a big impact at Christmas, it has to show up in force at the June CES show in Chicago. Other possible entrants into the Videogame Vendetta are also proceeding cautiously; each one seems to be waiting to see what the others will do. June CES promises to be very’ interesting.
Loose Lips Ship Chips The new Agnus chip has shipped to dealers, according to Commodore. By the time you read this, the chips should be at local stores. The upgrade cost will be around Si50 according to die Bandito’s sources. It’s good news for users, because now bigger bitmaps can fit in, larger and faster animations are possible, and multitasking will be more fun.
You have to feel sorry for develop¬ ers, though, because diey won't know just how many users have the new Agnus, and diat makes it hard to figure out if your software should depend on it.
Ah well, that’s dieir problem. Let's just enjoy the sensation of endless CHIP RAM space. Of course, in a few months the power users will start agitadng for a 2 megabyte Agnus. We power hungry types are never satisfied.
It’s the slowest time of the year for computer hardware and software sales, which means those companies on the edge are in a very dangerous spot. The companies the Bandito referred to before are feeling even worse dian diey did, and no buyers have appeared to rescue eidier firm. One of the companies has reportedly lost its affiliated label distribu¬ tion agreement with a large software publisher, and diey must now scramble to put together their own distribution network.
Their payments to creditors are getting later all the time, and their new products may not be enough to pull their coiporate chestnuts out of the fire. The other company the Bandito's been following is still on very shaky ground, and might not make the payroll this month. Both companies are still shop¬ ping for buyers or more capital, but no luck so far. The Bandito recalls a quote from a favorite science-fiction novel, "It sure is a bad moment when you decide to sell out. But a worse moment, the worst moment in the world is when you decide to sell out and nobody’s buying.” If diey go, diese
companies won’t be the first to die in the Amiga market, and they won’t be the last.
For Christmas diis year, the Bandito wants an Amiga 2500 widi UNIX, an A2286 BridgeBoard running DOS and OS/2, an Amax emulator running Macintosh software and, of course, good old AmigaDOS. Talk about a software base! The only problem would be organizing your disk library and figuring out how to partition your hard disk. Of course, you’d want a really large monitor so you could locate till the windows that would be stacked six deep on the Workbench. Wow, you could have bugs in there that nobody’s even dreamed of before. It’s either a technophile's dream or his worst nightmare.
The Bandito is truly appalled at the incredible lack of play value in some of die games flooding the market. Some of diese games have trouble loading properly, or the graphics are randomly smashed. The Bandito recently saw a game that doesn’t even have a rulebook (part of the game must be figuring out how to play it). Many games don’t even keep you busy for an hour.
No wonder there’s piracy. What’s the answer? The increasing shelf-space crunch at die retail stores should help weed out some of the weaker competi¬ tors, but the occasional dud from the major publishers will still find a home.
How do you find a good game and avoid the clunkers? Well, you can’t always expect reviewers to give you a straight answer—after all, they want to keep getting free games. Get a recom¬ mendation from a friend or go see the game being played in a store.
It's best if you can try it out for yourself. And when you get a dud, write a scathing letter to the manufacturer and tell them exactiy what you think is vwong with the game. That’ll get them to take some notice. Mail a copy to your favorite magazine, too, and maybe they’ll prim it. “Stop them before they program again!"
• AO ?AMIGA GA: The saga continu Exploring AMIGA PisK^tmcturga
erator Amazing AmigaBASIC Programming At Your Reaues Using
Requesters in AmigaBASIC by John Wiederhim Your friend gives
you the latest copy of his new disk utility program designed to
do everything under the sun. While using the program, you
notice that all the requester boxes look basically die same: a
couple of lines of text and two buttons, one says OK, the other
says Cancel.
Still, it's more than you have done in your BASIC programs. Whenever you needed a simple answer from die user, you had to code one of those dreaded “instrS" loops to get a character, then use if...then statements to interpret its meaning.
But you are not willing to leam C just for nice-looking requester boxes. So for now, you’ll have to make do with “instrS” loops.
While working on your home budget program in BASIC— which took a couple of days just to get the proper look and feel for the user interface—you realize your programs would look much better if you could use requester boxes to get the answers to yes/no questions.
The good news is that now' you can. The bad news is you’re going to get your hands a little dirty, and you’ll have to learn some new concepts. But the end result will be die ability to call up and use the "system-type” requester boxes in your own BASIC programs. These boxes look even nicer than die ones used in BASIC. You can do this little piece of BASIC magic by taking advantage of AmigaBASIC’s ability to call any of the system routines by using the DECLARE FUNCTION and LI¬ BRARY commands.
If you w'ere writing in C, all you would need to do to use the system routines is set up die proper parameters, then do a simple function call. Since die operating system was really made to be accessed using C, setting up the parameters in C is quite easy.
For us, it’s going to be a little harder. While calling die actual routine is about as easy, setting up the parameters is going to take a bit more work. C has things called “structures", and most Amiga system routines require that dieir parameters be given to them in structures. BASIC, on the odier hand, lias nothing really comparable to structures. It’s not impossible, but we're going to have to understand structures a little more before we can “kludge" them together from BASIC.
Type in the program at the end of diis article. When you’re done, SAVE IT! I cannot stress enough how important it is to save this program before running it. Since we are fiddling with the operating system widi diese routines, a typo or odier such error in die wrong place can and will crash the system, erasing everything in memory'. Take it from me, some of diose crashes are not only total, but rather spectacular as well. (Ever see a Guru with thick green vertical bars scattered on top of it?)
The program does not include any comments, and you may notice it is somewhat "modular” in construction. The various subprograms it contains were designed to be extracted and used in your own programs. Don’t worry, every line of code execution is explained in detail below.
Before we get into the program, however, let me explain a little about structures, and die systems routines used in the program. If you already have a working knowledge of using structures from BASIC, and understand what the system routines AllocMem, FreeMem, and CopyMem do, feel free to skip ahead to the section on the program itself.
Structures and system routines When wridng in BASIC, you often need to keep linked together pieces of data which are not of die same type. An example of this would be an inventory program where each part you keep in stock has a seven-digit stock number, an eighty-character description, and a four-digit number telling how many you currently have in stock. In BASIC, if you had to keep track of this data for ten different parts, you would probably use ten-item arrays like this: DIM StockNo&(10), Description$(10), HowMany%(10) To get the information for any particular type of part, you would just
get die data from die arrays for that item. To get the stock number of the part whose data is in array item 10, and put it into a temporary variable, you would use diis BASIC code: TempHowMony% = HowMony%(10) Not pretty or elegant, but functional. However, diis can become unwieldy quite rapidly as die number of data '‘fields" increases.
BASIC just isn’t very good at this kind of tiling.
Along comes the C language. In C, there is something called a structure which allows different "fields” of data to be linked up under one main heading. Even better, you can make arrays of those structures. The set-up code for die previous data types in C is as follows: struct PartData ( long StockNo; char Description(80): int HowMany; 1 InventorynOL Slightly longer in set-up, tine code creates a structure identical to the BASIC code above. To get tire same data as above (How- Many for -10), use the following code: TempHowMany = inventoiytlQJ.HowMony; No more complicated, and no questions
regarding what the HowMany%0 array belongs to. Another advantage of structures is that they can have other structures inside them. But for reasons having to do with how C handles structures, they are usually handled using their addresses by using pointers; instead of holding structures, they use pointers to structures instead.
(The function of a pointer is a bit too involved to get into here, so I will only explain them as they relate to the program.) One other advantage of elements of a C structure is that they are contiguous in memory, which is very important to how we can use them in BASIC.
A rather common structure used as a parameter in system routines is the IntuiText structure. Its C code looks like this; struct IntuiText f byte FronlPen, BackPen; byte DrawMode; short LeftEdge: short TopEdge; struct TextAttr 'ITextFont: char *!Text.- struct IntuiText "NextText; ( When one of these structures is created in memory, it is in the format descibed below: Element Ohset Size Format FronfPen 0 1 byte (0-255) BackPen 1 1 byte DrawMode 2 1 byte LeftEdge 4 2 short integer (BASIC's %) TopEcge 6 2 short Integer ItextFont a 4 long integer (BASIC's 80 Itext 12 4 long Integer NextText 16 4
long integer The offset entry' refers to where we must poke the value to get it in the right place, relative to the address of the structure in memory. The format tells what kind of “POKE” we should use to put the value there, and Lhe size is the size of the element in bytes. The last diree elements are not die data itself, but the data’s address in memory. For this article, we will always set ItextFont to 0& (which tells die system to use die default font). The Itext element points to a null-terminated (i.e., ending with CHR$(0)) string, ancl the NextText element holds either the address of
the next IntuiText structure, or 0& which means there is no next structure (more on this later).
To set an area of memory up as an IntuiText structure from BASIC would require the following code, where ITAddr& is the base address of the structure: POKE ITAddr&. FrontPen% POKE ITAddr&+1. BackPQn% POKE ITAddrSr+2, DrawMode% POKEW lTAddr&+4, LeftEdge% POKEW !TAddr&+6, TopEdge% POKEL ITAddr&+8, 0& POKEL ITAddr&+12. Itext& POKEL ITAddr&+16. NextText& Remember those lines of code, because you will be seeing them in the program , in a slightly altered torm.
Next comes the problem of where to put the IntuiText smicture. In the Amiga, you can have more than one program running at once, and you need a way of telling other programs that memory you are using is ''off-limits" to them. While the C language does this automatically for structures, BASIC does not recognize structures, so it has no such ability.
What we need is a routine which tells the other programs that w:e are using a block of memory, and to stay out of it.
Fortunately, the Amiga's operating system provides just such a routine, AllocMem. Part of the Exec library, AllocMem can allocate memory' for die sole use of the calling program. It is called from BASIC as follows: Addr& = AllocMem&C Size&, Type& ) The Size& variable must hold the number of bytes desired, and the Type& variable for the sake of this program will always be 65537&. The address of the allocated memory is returned in Addr& or, if AllocMem cannot meet your needs, a value of 0& is returned.
Another important part of “polite” memory’ management on the Amiga is that once a program is done with memory it allocated, it should return it to the system using the FreeMem routine. If it does not return the memory, the available system memory' will get “eaten away" because the system can never regain control of the allocated memory on its ov.m without rebooting. In the most extreme cases, the system can crash because it simply runs out of memory' due to such allocation.
Therefore, it is very important to be sure FreeMem is used when you are done with an allocated block of memory. To call FreeMem, use the following BASIC code: dunn& = FreeMem&C Addr&, Size&) Addr& is the address you received when die memory was first allocated with AllocMem. Size& is the number of bytes allo¬ cated. A “garbage" value is returned in dum&, which has no meaning but is necessary to use FreeMem from BASIC.
There is one more thing about FreeMem you should probably be aware of. FreeMem has a rather nasty' habit of crashing die system if given eidier an address of memory not allocated by your program, or if the number of byxes you try' to free is different from die number you originally allocated. If you are using this routine, make sure you have a saved copy of die program on disk, and try to avoid giving this routine incorrect data. One good way of making sure the data is correct is to make the call to FreeMem a remark, then put a PRINT statement after it showing the values of Addr& and Size&.
.Also, put such a (continued) PRINT statement after the call to AllocMem. When you run tire program, you'll know the numbers for the allocated memory, as well as those for the memory you are trying to free. It may eat some memory, but as long as it doesn't get out of hand, it can be invaluable in debugging programs which use these routines.
Then, when everything is fixed, delete the two PRINT state¬ ments, and remove die apostrophe (or REM) from die line for FreeMem.
The third system routine used in the program is called CopyMem. Rather straightforward, CopyMem is called from BASIC like this: dum& = CopyMem&( source&, destinations, size& ) Again, dum& is a dummy variable needed to make CopyMem work properly from BASIC. 5ource& is the address the routine is to copy From, destinations represents where it is to copy to, and stze& is the number of bytes to copy. The real advantage of using this routine is its speed. Since it is done in machine- language speed rather than BASIC, it is much faster than using BASIC loop.
These three routines are very useful and essential to using system-level resources on die Amiga. The program uses one more system routine, AutoRequest, which we will discuss in die next section. To use any system routines from BASIC, you must have the appropriate .brriap files in eidier the libs: directory of your WorkBench disk, or the current directory when the program is run. This program needs the intuition.bmap and exec.bmap files. If you don’t have diem, you can make them using the ConvertFD program from the BASIC Demos drawer on your AmigaBASIC disk. For more information on .bmap files,
consult your AmigaBASIC manual.
The AutoRequesterprogram This program was designed as an example of how to create certain system structures and use certain routines. More specifically, die program uses the system routines AllocMem and CopyMem to set up some ImuiText system structures in memory, whicli are then used to call die AutoRequest routine, and are finally “de-allocated” using FreeMem.
The AllocMem, CopyMem, and FreeMem routines, as well as die IntuiText structure, were discussed above. The AutoRe¬ quest remains to be discussed. This routine is the workhorse of the program and, when used properly from BASIC, it allows the programmer to put up a “system” requester, and get one of two answers from the user, specified by the programmer. In this program, it is used to just put up a sample requester with the selections "OK” and "Cancel” for ihe user to choose. However, since die programmer sets what each button's text will be, they could say and mean almost anything (they could
have just as easily said, for example, "Reindeer” and “Flotilla"). The AutoRe¬ quest function is called from BASIC as follows: responseX = AutoRequestX( window&. Text&, Lbutton&, Rbutfon&, LFIagsSt, RFIags&, width&, heightSO \Vindow& is the address of the “parent" window’s structure. For the sake of tills program, is what you get from WINDOW(7) in BASIC. Text& is die address of the IntuiText structure that defines the text in die body of die requester. It can be the first of a linked list of IntuiTexts (using the NextText field), which allows more than one line of text in the body of tire
requester (we will discuss how to link them below). Lbutton& and Rbutton& are the addresses of the IntuiTexts which hold the texts for the left and right button. Lflags& and Rflags& are special operating system (OS) flags and, for die sake of this program, we will set them both to Q&. Finally, Width& and Heights are the size in pixels of the entire requester.
Finding the proper settings for these is mosdy guesswork, but setting Width to 47 + (8 * num. Chars, in longest line) will work as long as the length, and the button text is not too long.
Height is harder, but 50 works for three lines of text in die body plus the buttons. Depending on the button die user selects, die routine returns either a zero or one in response%. If the left is selected, it returns a one. Clicking the right returns a zero. Set up the parameters, call die routine, and check whether it returned a zero or one. That's all there is to it. The system does die rest.
Now let's move on to the program itself. Once it is typed in and saved, run it a few times. If it crashes, check for typos and try' again. Try both selections. See how easy it is? And it looks a lot better than “Do you wish to continue...(y) or (n)”.
Once you’re done playing with die program, list it, or read along in the back of the ardcle, because we are now going to dissect its operation line by line. Let's begin.
CLS ON BREAK GOSUB CleanExit BREAK ON PRINT ’ Press any key to start the demonstration..." dumS «INPUTS(l) These first few lines clear the screen, set BASIC so that if die program is interrupted it can try to exit “cleanly”, and then wait for the user to press a key before starting (an “old" way).
DECLARE FUNCTION AliocMem&O LIBRARY DECLARE FUNCTION CopyMem&O LIBRARY DECLARE FUNCTION AutoRequestXO LIBRARY DECLARE FUNCTION FreeMem&O LIBRARY LIBRARY “exec.library” LIBRARY “inturtion.library" Here we tell BASIC die names of die functions we will be using, and where it can find them. See the end of the previous section for more on libraries.
Start: TxtlS = “Sample Autorequester Dialog —* Txt2S = “Up to 3 lines of 30 characters" Txt3S = "can be used in this dialog box" LbttnS = " OK " RbttnS = " Cancel ’ Hand& = WINDOWS) resp% = 0 This sets up variables widi the values we want to appear in the requester. Note that the variables must be specific data types.
DoReq Hand&, TxtlS, Txt2S. Txt3S, LbttnS, RbttnS, respX SUB DoReq (win&,Txl$,Tx2S,Tx3S, IbutS, rbut$, r%) STATIC s 0 c i/t m I i/i H tv.-
(602) 322-6100 Practical i Solution/, 1135 N. Jones Blvd.,
Tucson, A2 85716 m: The BASIC subprogram DoReq is the
controller of all the other subprograms used to finally
create a requester. The way it is written here allows three
lines of thirty characters each for the body text, and a
twelve-character string for each of the buttons.
These values are changeable, depending on what you need in your programs, and you should understand how you change them by the time we are done here. Inside the subprogram win& is the address of the parent window, TxtlS - Txt3$ are the three lines of body text, IbulS and rbutS are the left and right button text strings, and r% is the variable which will be used to pass back the user’s selection, r% = 0 wd& = 280& ht& = 70S TxlS = LEFTSCTxl S,30> Tx2S = LEFT$(Tx2S,30) Tx3S = LEFTS(Tx3S,30) IbutS = LEFT$(lbut$,12) toutS = LEFTS(tout$,12) These zero die response variable, set the variables for
the width and height parameters of AutoRequest, and make sure the various text strings are not too long.
CALI Creote!Text( 0.1.0,7.3. Txl S. 11 & ) CALL CreotelText( 0. 1, 0, 7,13, Tx2$,t2& ) CALL CreotelText( 0.1,0.7.23, Tx3$. T3&) SUB CreateiTexK Pa%, Pb%. Md%, LE%. TE%. TxtS. Adr& ) STATIC The CreatelText subprogram is pretty generic. It takes the values lor all the elements of an IntuiText structure, then allocates space for one, and fills it with those values. Note the changing values for TE% between the three calls to it above.
These three calls set tip die body text of the requester, and all will be in the same “box" of reference, so they must be offset vertically to prevent overwriting each other. Pa% and Pb% are the codes for the color register to be used for the text and its background (sort of). They are integers here, but will automati¬ cally be converted to bytes by the POKE command. Md% is the drawing mode to be used.
Here all use theJAMl mode (0), but they can have any value from zero to three. Try changing them to see what die other modes look like. It too is converted to a byte by the POKE routine. LE% and TE% refer to the offset in pixels from the upper-left corner of the imaginary7 box surrounding each text area (body, Lbutton, and Rbutton). We'll set the ItextFont to 0&, so CreatelText doesn’t ask for it. The same is true of NextText (for now). TxtS holds the string which is to be die text data for the structure. Finally, Adr& will be the variable CreatelText returns die address of the structure in.
TxtS = TxtS + CHI}$(0) Size& = LEN{Txt$) memtype& = 2^0 + 2A16 Next, TxtS is made null-terminating (by appending CHRS(O)), Size& is set to TxtS’s length in bytes, and memtype& is set (albeit cryptically) to 65537. As said before.
LAddr& = Q& tAddrSc = 0& iAddr& = A1!ocMem&( 24&, memtype& ) tAddrS = AI!ocMem&( Size&, memtype& ) By setting Iaddr& and tAddr& to 0& before calling AllocMem we ensure that, should there is a problem allocating either, its value will equal zero. We then allocate 24 byres for the Intui¬ Text structure itself, putting die address in Laddr&, and then allocate the number of bytes there are of string data, with the address going in tAddr&.
IF (iAddr& = 0 OR tAddr& = 0) THEN PRINT ‘Memory allocation problem!!!"
STOP END IF This checks for any problems in memory allocation. If a problem occur, it would halt program execution. Save anything that needs to be saved. You should probably reboot as well.
Dum& = CopyMem&( SADDCTxtS). TAddr&. Size&) Quickly copy the string data from where BASIC is keeping it to the memory we have allocated for it. BASIC has a nasty tendency of moving the addresses of string data around at will, and there is no guarantee that if we used that address in the Now For The Amiga!
Are you tired of fumbling under or behind your computer to swap your mouse and joy¬ stick cables? Are your cable and computer connectors worn out from all the plugging and unplugging? Then Mouse Master Is a must for vou!
(continued) IntuiText, it would still point to die string. This way, we know where it is, and it cannot move on us.
POKE iAddr&. Po% POKE iAddr&+l, Pb% POKE iAddr&+2. Md% POKEW Iaddr&+4, LE% POKEW Iaddr&+6. TE% POKEL Iaddr&+6, 0& POKEL iAddr&+12, tAddr& POKEL iAddrSt+16, 0& The various forms of die POKE statement here are used to set die elements of our IntuiText structure to the desired value.
Different versions are needed because die system stores numbers in different formats, depending on what type they are.
For more on POKE statements, see your AmigaBASIC manual.
Adr& = iAddr& END SUB Finally, die address of the set IntuiText structure is put into the variable which it will be passed back in, and the subprogram ends.
CALL LinklTextC tl&. T2&) CALL LinklTextC t2&. T3& ) Back ill DoReq, the LinklText is called. The LinklText subpro¬ gram pokes the second IntuiText’s address into the NextText field of tiie first one. The first parameter is the address of the first IntuiText. The second is die second's address. Here we use it to link line two of die body text to line one, and to link line diree to line two. This is how to get more than one line of text where the routine calls for only one IntuiText’s address.
CALL CreatelTextC 0,1, 0,5, 3, IbutS, Its ) CALL CreatelTextC 3,1,0,5,3, rbutS, rt&) Creating more IntuiTexts, diis time the ones for die left and right buttons’ texts.
R% = AutoRequest%( win&, tl&, !t&, rt&, 0&, 0&, wd&, ht& ) Here we go. This passes the (hopefully correct) parame¬ ters to the AutoRequest routine and, with any luck, will get back the user’s response in r%.
CALL FreelTexU t! &) CALL FreelText( 12&) CALL FreelText( t3&) CALL FreelTextC lt&) CALL FreeiTextC rt&) SUB FreelTexK lAddrS: ) STATIC Now, to be polite, we call FreelText for every IntuiText we allocated. All we need to give the subprogram is die address of the IntuiText which we are “de-allocating”. Remember, giving the wrong address to this routine will crash the system.
TAddr& = PEEKLC Iaddr8c+12 ) Size& = 0& WHILE ( PEEK( tAddr& + Size& ) > 0 } Size& = Size& + 1 WEND Size& = Size& + 1& FirstFreelText checks the Itext field of the IntuiText to tofind the address of the related text memory that was allocared.
Next, since diere is no field which says how long the text data is, but we do know it’s null-terminated, the subprogram scans die memory from the address of die text data until it hits a CHRS(O), and figures die number of bytes it scanned, which is die number of bytes allocated.
Dum& = FreeMem&( iAddr&, 24& ) dum& = FreeMem&( tAddr&. Size& ) END SUB The subprogram dien calls the FreeMem routine to free the specified memory. If the addresses or sixes are wrong, it will also provide video fireworks, and a visit from die Guru. If everydiing is okay, the subprogram ends.
END SUB That’s it. DoReq is done, and returns control to the main program, passing back the user’s response.
PRINT PRINT ‘You clicked on the IF resp% THEN PRINT *OK button.' ELSE PRINT ‘Cancel button ' PRINT PRINT 'Try the demo again? — (y) or (n)' dumS = INPUTS(l) IF UCASESCdumS) = *Y' GOTO Start CieanExit; LIBRARY CLOSE END RETURN The main program then decodes whether the left or right button was pressed based on whedier resp% is zero or one. It then prints die corresponding message. The program again uses the old method to determine whedier the user wants to continue or end. If the user wants to keep going, die whole thing starts over from Start:. If the user decides to quit, the program doses die
libraries it opened, and ends. The RETURN statement is just there to make the ON BREAK...GOSUB statement not cause an error. It doesn’t actually do anything.
That is how you use requesters from BASIC. Not really all diat complicated, but tricky in parts. The program’s subpro¬ grams are designed to be easily portable to your own programs.
Just save them by saving with die "A” opdon, and merge them in as needed.
Study the program until you understand how diing.s relate.
Then play with changing die different parameters of CreatelText, and perhaps even rewriting DoReq for more lines or longer buttons. BASIC doesn’t have to be a second-rate programming language.
CN BREAK GOSUB CleanExit BREAK ON PRINT * Press any key to start the demonstration..." dum$ = INPUTS(1) DECLARE FUNCTION AilocMemi(I LIBRARY DECLARE FUNCTION CopyMems() LIBRARY DECLARE FUNCTION AutoRequestl(] LIBRARY DECLARE FUNCTION FreeMemSO LIBRARY LIBRARY "exec.library" LIBRARY "intuition.library" Start: TxtlS = "Sample Auto requester Dialog —" Txt2S = "Up to 3 lines of 30 characters" 7xt3S = "can be used in this dialog box" LbttnS = " OK RbttnS = " Cancel " Hands = WINDOW(7) resp% <* Q DoReq Hands, TxtlS, Txt2S, Txt3S, LbttnS, RbttnS, respl PRINT PRINT "You clicked on the ”; IF resp% THEN
PRINT "OK button." ELSE PRINT "Cancel button."
PRINT PRINT "Try the demo again? — (y) or (n)" dumS = INPUTS(1) IF UCASES(dumS) = "Y" GOTO Start CleanExit: LIBRARY CLOSE END RETURN SUB DoReq (wins, TxlS, Tx2S, Tx3S, lbutS, rbutS, rll STATIC r% = 0 wdS = 280S htS = 70s TxlS = LEFTS(TxlS,30) Tx2$ = LEFTS(Tx2S,30) Tx3$ = LEFTS(Tx3S,30) lbutS = LEFTS(lbutS,12) rbutS = LEFTS(rbutS,12) CALL CreatelText( 0, 1, 0, 7, 3, TxlS, tiS ) CALL CreatelText( 0, 1, 0, 7, 13, Tx2S, t2S ) CALL CreatelText! 0, 1, 0, 7, 23, Tx3S, t3S > CALL Lir.klText ( tlS, t2S ) CALL LinklTexc( t2s, t3S ) CALL CreatelText( 0, 1, 0, 5, 3, lbutS, Its ) CALL CreatelText! 3, 1, 0,
5, 3, rbutS, rtS ) r% “ AutoRequestl( wins, tlS, Its, rtS, OS, OS, wdS, htS 1 CALL FreelTextj tlS CALL FreelTextl t2s CALL FreelTextl t3S CALL FreelTextl Its CALL FreeIText( rtS END SUB SUB CreatelText! Fa %, Pb%, Md%, LEI, i, TxtS, AdrS ) STATIC TxtS = TxtS + CHRS(O) sites = LEN(TxtS) memtypeS = 2"0 + 2A16 iAddrS = OS ONE BYTE Listing One CLS We take a ^ out of the price 51 Norwlch-Ncw London, Tpko. Rta 32 Quaker Hill, CT 06375
(800) 441-BYTE, In CT (203) 443-4*23 Authorized dealer for
Commodore-fimiga Computers, Great Valley Products (GVP),
Memory fi Storage Technology (M.fl.S.T.J. Authorized
Commodore-fimiga Service and Repair.
Authorized Amiga Graphics Dealer.
AMIGA IS A REGISTERED TRADEMARK OE COMMODORE-AM IGA, INC. tAddrS = 0s iAddrS = AllocMemS( 24s, memtypes ) tAddrS = AllocMemS( Sites, memtypeS ) IF (IAddrS = 0 OR tAddrS = 0) THEN PRINT "Memory allocation problem!(!"
STOP END IF du.tiS = CopyMems ( SADD(lxtS), tAddrS, Sizes ) POKE iAddrS, ?a% POKE iAddrS+1, Pb% POKE iAddrs+2, Kd% POKEW iAddrS+4, LEI P0KEW iAddrS-6, TE% POKEL iAddrS+8, OS PCKEL iAddrS-12, tAddrS POKEL iAddr«-16, OS AdrS = iAddrS END SUB SUB FreelTextl iAddrs ) static UaddrS » PEEKLj iAddrS+12 ) Sites = OS WHILE [ PEEK ( tAddrS + Si2eS ) > 0 ) Sites “ Sizes - 1 WEND Sizes = Sizes + Is dumS = FreeMemsI iAddrs, 244 ) dumS = FreeMemS( tAddrS, Sizes ) END SUB SUB LinklText( ItextlS, Itext2s ) STATIC POKEL ItextlS +16, Itext2S END SUB
• AC* A Summer Treat This Summer is hotter than ever, thanks to
AC!
Amazing Computing has lined up 3 HOT issues for the Summer months to provide a cool look at some special topics on the Commodore AMIGA. Included in the regular Summer issues of AC will be the following special focus sections:
• A special AMIGA Technical supplement in June—This feature will
provide Amiga “techies” and non-techs with some new programming
insights,
• A special AMIGA Games supplement in July—The weather will be
hot, but so will Amiga games. The games supplement will keep AC
readers informed on the latest and greatest in Amiga games.
• A special AMIGA Video supplement in August—AC's video
supplement will showcase the Amiga’s powerful video abilities
with articles to help users literally see what the Amiga can
do.
Amazing Computing always provides HOT information on the Commodore Amiga market no matter what the weather. But this Summer, the Heat is on as the Amiga continues to grow' in the consumer market. AC will be there to guide its readers through the changes, developments, and new options the Amiga's rapid growth has provided.
Just the thing to ease those "Dog Days of Summer".
Relax With a subscription to 1 X JL COMPlJTING'(y As the Summer heats up, don't miss an issue of AC's special coverage. Just think, AC is the perfect companion on a long vacation drive, a day at the beach, or just a warm afternoon in your favorite hammock.
Through the pages of AC, you wall be able to keep current with the new Amiga trends and products. AC has provided more Amiga cover¬ age than any other resource (Summer, Fall, Winter, and Spring). As an active Amiga user, this constant supply of Amiga information is important all year through.
Don't miss the Heat, subscribe today to keep current with the leader in Amiga information, Amazing Computing for the Commodore Amiga.
Don't Miss The HEAT!
R Subscribe TODAY and save over 49% on Amazing Computing!
Amazing Computing is available to United States subscribers at .00for 12 issues. That's a savings of -40 off the newsstand price. Canada and Mex¬ ico, .00. Foreign Surface to all other countries, .00. (Air mail and first class rates available upon request.)
Yes! Please enter my 12 issue suscription to Amazing Computing today!
Name.
Street City_ Zip.
ST Amount Enclosed.
? Visa ? MC Signature ,00 minimum on all credit card orders.
Ail funds must be in U.S. currency drawn on a US bank. Please allow four to six weeks for processing.
1-800-345-3360 Exploring Amiga Disk Structures by David W. Martin A migaDOS itite rtia Is As part of the ROM software that lies at the heart of most Amigas, you will find the computer’s soul: AmigaDOS, Amiga¬ DOS is the software which controls all the mass storage devices
(i. e., floppy and hard disk drives) connected to your computer.
Every time you create a new file, load or save a program, format a disk or examine a directory, you are using AmigaDOS.
Externally, AmigaDOS looks pretty simple, but internally it is not. However, to simplify, you can split AmigaDOS into two internal levels of operation. On level one, AmigaDOS operates on each storage device by breaking it into a number of surfaces, cylinders, and blocks. On level two, .AmigaDOS operates on strings of linked disk blocks called files.
At level one, each storage device is broken down into a number of surfaces or disk sides, cylinders or tracks, and blocks. The standard AmigaDOS floppy disk has two surfaces, SO cylinders, and 11 blocks per cylinder, which means that each AmigaDOS disk contains 1760 blocks (i.e., 80* 11*2=1760). Eacli block consists of 512 bytes of data, so die total storage capacity for an AmigaDOS disk is 901,120 bytes (i.e., 1760*512=901,120).
Using the format described, AmigaDOS stores on disk files made from block-sized pieces of data and stored in a special format AmigaDOS can understand. Since there is a wide variety of disk hardware, AmigaDOS uses special software to drive it.
By using a modular approach, AmigaDOS controls disk hard¬ ware connected to an Amiga computer. Level one of AmigaDOS consists of a collection of modules called device drivers for each device. The device drivers control the disk hardware by telling AmigaDOS how to read and write tire disk blocks. You can add any new device to AmigaDOS by writing your own device driver or by using one supplied with the equipment (most commercial hard drives come with a prewritten device driver).
Now we move up to level two of AmigaDOS, which divides a disk into files and directories. At level two, .-AmigaDOS has software called file handlers. The file handlers arc respon¬ sible for tire format your files take when broken down to their smallest component—a disk block. The standard AmigaDOS file handler accepts commands that read, write, delete, or rename files. With a the file handler, the program does not have to understand the disk format used to store data. The program only has to ask for a file by name and wait for the handier to pass the data to the program. Since the program does
not depend on the way the data is stored, you can have several file handlers that all use different formats. As long as the handler accepts standard commands, the rest of the system lets it manage that data in any way it wants. This is a definite advan¬ tage in a multitasking system like the Amiga, since special handlers can be written to support special applications while still retaining compatibility with the standard AmigaDOS file handler.
Disk structure The current version of AmigaDOS (VI .3) supports two standard file handlers. The original file handler, which can be used on floppy or hard disks, and the new Fast Filing System (FFS). The FFS provides a way of greatly improving foe per¬ formance of hard disks (and floppy disks with a special patch program). Both of these AmigaDOS handlers are compatible— foe same set of commands manage files, and both communicate with standard device drivers to read and write disk blocks.
The only difference between the handlers is that they use different disk formats to store information on a diskette. The format used by the FFS is based on the original format, but the data block has been changed to provide better performance.
Modifications to the data block when using the FFS remove duplicated data from the disk, speeding disk access and giving the disk more usable space.
A standard block of data contains 512 bytes of character data. AmigaDOS divides each block up into 128 wrords of data (a word is four bytes long and contains 32 bits). The first two blocks on an AmigaDOS disk, called boot blocks, are numbered zero and one. The blocks tell AmigaDOS what format is used.
When foe first word of foe block zero contains the code DOSO, AmigaDOS knows the disk is formatted with the original file handler. A code of KICK tells AmigaDOS the disk is a Kickstart disk, and a code of NDOS means the disk uses a nonstandard format. The FFS uses the code DOS1.
When using either the original or fast filing system, you will find at the center of an AmigaDOS disk a block designated as foe root block. The root block contains information about the disk's root directory, volume name, date the disk was first formatted, and some other important disk information, The format of an AmigaDOS root block is shown in Table One.
AmigaDOS root block The first word of foe root block, zero, indicates foe type of block we are looking at. In this case, the root block type takes the value of T.SHORT, which is two. As you can see in Table One, AmigaDOS does not use words one, two, and four of foe root block (word three will be explained below).
Word five contains the checksum for the root block.
AmigaDOS uses this checksum to determine if the disk data has been corrupted. AmigaDOS calculates the checksum using tire following method.
AmigaDOS first sets word five to zero and adds up all 128 words in the block. It dien takes die sum of the 128 words and divides the sum by the maximum value diat can he stored in a word, which is 4,294,967,296. The remainder becomes the checksum, and die checksum is placed in word five. Now when the sum is divided by die remainder of all die words, the answer should be zero, If it is not zero, somediing is wrong widi the data block.
Word three contains the size of die root block’s hash table, which is 72 for standard AmigaDOS disks. The hash table keeps track of the files in the root directory, When a new file is added to the directory, AmigaDOS takes the file name and performs a calculation on it. This calculation is called the hashing function, and it returns a number between one and 72, which serves as an index into the hash table. The block number of die file's data is placed in the appropriate word in die hash table. Later, AmigaDOS uses the hashing function to find die block number of the file. If there is no file
to match a selected hash value, then diat entry in the table is set to zero.
The bitmap helps AmigaDOS decide which blocks are free and which contain data. .Any time AmigaDOS adds or removes disk data, the disk's bitmap becomes invalid. Therefore, every time a file is deleted or created, the biunap is marked as invalid before the actual bitmap is changed. When die appropriate blocks have been marked as free or used in the bitmap, the map is marked as valid again. The BMFLAG word (word 78 in die root block) indicates the bitmap's status. A value odier than zero means die bitmap is valid, If die BMFLAG is zero, then AmigaDOS is in the process of updating die bitmap.
The bitmap is stored as one or more blocks containing die bitmap and a checksum. A standard AmigaDOS 3.5" floppy disk has 1758 blocks on it, so the bitmap contains 1758 bits. Since Table One Boot Block Long Word Byte Constant Number Number Description Value 0 0 Block Type: T.SHORT 2 i 4 Always Zero 0 2 8 Always Zero 0 3 12 Hash Toble Size 72 4 16 Always Zero 0 5 20 Block Checksum 6 24 Start of Hash Table 77 308 78 312 BMFLAG (<>0, Bitmap is Valid) 79 316 Bitmap Pointers 104 416 105 420 Last Write Access: Day 106 424 Last Write AccessiMinutes 107 428 Last Write Access: Ticks 108 432 Disk Name
(30 Character BSTR) 120 480 121 484 Disk Creation Dote: Day 122 488 Disk Creation Date: Minutes 123 492 Disk Creation Date: Ticks 124 496 Always Zero 0 125 500 Always Zero 0 126 504 Always Zero 0 127 508 Secondary Block Type: ST.ROOT 1 we can fit 8 bits in a bye (and four bytes in a word) each word contains the bit map for 32 blocks. Therefore, a standard AmigaDOS floppy’ disk uses 55 words for its bitmap (i.e. 55*32=1760 less two extra bits yields 1758).
The first word of a bitmap block, zero, contains a check¬ sum for the block. The first bit of word one is the map bit for the first usable block on die disk. If this bit is set to one, then die first usable block is free. If the value is zero, then the block is used by some file or directory'. The rest of the bitmap follows die same form. The second bit of die first word refers to the second disk block, and so on. If any of the slots in the bitmap table are not used, then AmigaDOS sets them to zero.
Following the bitmap table is a space for the current date and time. The three words (105-107) contain the days, minutes, and ticks (50 dcs/second) since January' 1, 1978. The format is called a date stamp, and it holds the day and the time the disk was last changed.
Following the date stamp is the volume name. It is stored in a format called BSTR or BCPL string (BCPL was the computer language used to write AmigaDOS). A BSTR string contains a number representing die string's length (0 to 255) and the string text. A disk volume named “AmazingCom” would have a length of ren, followed by ten bytes holding the w’ord •.AmazingCom." AmigaDOS volume names should be 30 characters or less in length.
Following the volume name is another date stamp in words 121-123. It holds the date and time the disk was format¬ ted. The next diree words (124-126) are not used in die root block, and the final wford contains the block's subtype. The subtype value is ST.ROOT and its value is one.
(continued) Table Two User Directory Block Long Word Byte Constant Number Number Description Value 0 0 Block Type: T.SHORT 2 1 4 Block Pointer to itself 2 8 Always Zero 0 3 12 Always Zero 0 4 16 Always Zero 0 5 20 Block Checksum 6 24 Start of Hash Table 77 308 78 312 Not Used by AmigaDOS 0 79 316 80 320 Protection Status Bits 81 324 Not Used by AmigaDOS 0 82 328 Directory Comment (79 Character BSTR) 104 416 105 420 Creation Date: Day 106 424 Creation Date: Minutes 107 428 Creations Date: Ticks 108 432 Directory Name (30 Character BSTR) 123 492 124 496 Next Block Using Same Hash 125 500 Pointer
to Parent Directory 126 504 Always Zero 0 127 508 Secondary Block Type: ST.USERDIR 2 Convert IFF Bitmapped Pictures to 2D and 3D Objects!!!
Now You Can Make Use of All ’! Hose Dpaint and Digitized Piclures in Your Favorile 3D or CAD Package VIDEOSCAPE 30, AEGIS DRAW, INTROCAD, MCAD, PROFESSIONAL PAGE, POSTSCRIPT DXF (AUTOCAD...) & More.
TO ORDER CALL 1 000-628-2820 Ext 829 We accept VISA, MASTER CARD and AMERICAN EXPRESS Only .95 Or Send Check or Money Older lo: Rainbows Edge Productions 4412 4lh Avenue Sulle 2 Brooklyn, NY 11220 All pioduct names are Tradomaiks ol their respective companies Files and directories AmigaDOS spends a great deal of its time managing disk files and directories. Most of die following disk blocks use formats similar to die root block. Table Two shows die fonnat of a user directory block.
The first diing you will nodce about the user directory' block is its similarity to die root block. The root block is basically a directory' itself, but it holds some special informadon about the disk, and it doesn’t have a parent directory'. The only differences you will find are in the first few words of the block.
Word one becomes a pointer to the directory' and tells Amiga¬ DOS where die directory block is stored on the disk. The directory's hash table holds the file pointers for all the files in die directory using the same format as die root block.
At this point, die differences between the directory block and die root block become clear, For instance, areas used in the root block to store bitmap information are used differendy in the directory block.
One way of using die space is to store an AmigaDOS file note for eadi file and subdirectory. The file note acts as a comment, which is stored as a BSTR, and tells you something about die file.
Another way of using die space is to store the file and directory protection bits. The bits, as listed in the AmigaDOS VI .3 documentation are Read, Write, Executable, Deletable, Script, Archive, and Pure. The protection information is stored in one word (32 bits). Since AmigaDOS uses only seven of the available 32 bits, there are 25 available for future expansion.
Programmers should not tamper with the expansion bits since tampering with them may cause incompatibility problems with future versions of AmigaDOS.
The protection bits Read. Write, and Execute are not supported by AmigaDOS VI.3. A future release of AmigaDOS will prevent files from being examined, changed, or executed.
The Delete, Archive, Script, and Pure bits are supported by AmigaDOS VI.3. The Delete bit protects a file or directory from being deleted. Attempting to delete such a file produces an error message. The Archive bit tells AmigaDOS that a file has been changed since it was last accessed. The Script and Pure bits are newly supported protection bits in AmigaDOS 1.3. The Script bit marks files as script or batch files (i.e., the startup sequence). The Pure bit marks files that can he made resident in memory.
Following die protection bits is die comment field for the directory, the directory’s creation date and time, and the directory’s name. The directory's comment and name are stored in the BSTR format.
Following the directory's comment and name is a pointer to its parent or root directory. This pointer, contained in word 125, allows AmigaDOS to find its way back to die root directory from any subdirectory. This is accomplished by backtracking through the directory blocks using the pointer in word 125 as a step. Finally, the block subtype flag is present and it's called ST.USERDIR. The value of ST.USERDIR is two.
At first it appears diat AmigaDOS directories would be limited to only 72 files per directory, but diis limitation is overcome by the hashchain pointer (word 124). The pointer tells AmigaDOS where it can find the rest of die files that are Table Three File Header Block lg Word Byte Constant Number Number Descriplion Value 0 0 Block Type: T.SFfORT 2 1 4 Block Pointer to Itself 2 8 Number of Blocks Stored in File Hecder 3 12 Always Zero 0 4 16 First Data Block 5 20 Block Checksum 6 24 Last Block Pointer to Data Blocks 77 308 First Block Pointer to Data Blocks 78 312 Not Used by AmigaDOS 0 79 316
80 320 Protection Status Bits 81 324 Disk File Size in Bytes 82 328 File Comment (79 Character BSTR) 104 416 105 420 Creation Date; Day 106 424 Creation Date: Minutes 107 428 Creation Date: Ticks 108 432 File Name (30 Character BSTR) 123 492 124 496 Next Block Using Same Hash 125 500 Block Pointer to Parent Directory 126 504 Block Pointer to 1 st Extension Block or 0 127 508 Secondary Block Type: ST.Flie -3 part of the current directory. Notice that if more than one file in a directory hash has a certain value, the hash table points to the first file with that value. Then that file points to
the next file in the hashchain, and so on. If there are no more files in the hashchain, tire file entry is zero. The hashchain allows an unlimited number of files in a directory limited only by the amount of disk space available.
File headers The file header block is similar to the directory block in many ways. After you examine the directory structures above, you will know how to find a file in a disk directory. The following information will teach you .AmigaDOS file structures.
The directory’s hash table points to the file header blocks.
Table Three shows tire format of a file header. Once again, similarities arise, since the file header block is similar to that of the directory block.
File header blocks keep a list of the blocks used to store file data. A block table holds pointers to the file’s data blocks (it takes the place of the directory block’s hash table). The Table Four File List Block Lg Word Byte Constant Number Number Description Value 0 0 Block Type: T,LIST 16 1 4 Block Pointer to itself 2 8 Number of Blocks Stored in File List 3 12 Always Zero 0 4 16 First Data Block 5 20 Block Checksum 6 24 Last Block Pointer to Data Blocks .
77 308 First Block Pointer to Data Blocks 78 312 Not Used by AmigaDOS 0 123 492 124 496 Always Zero 0 125 500 Block Pointer to File Header Block 126 504 Block Pointer to next Extension Block Zero if all Blocks are recorded in Data Block Table.
127 508 Secondary Block Type: ST.File -3 Table Five Data Block Lg Word Byte Constant Number Number Description Value 0 0 Block Type: T.DATA 8 1 4 File Header Block Pointer 2 8 Data Black Number 3 12 Number of Actual Data Bytes In this Block 4 16 Next Data Block Pointer (0 if Last Block) 5 20 Block Checksum 6 24 Start of Data : ; : (488 Bytes of Storage/Block) 127 508 End of Data DIGITAL DYNAMICS- Power Packed Programs for your AMIGA SNIP - Digital Signal Processing 5.50 Developed in 1986 for medical and space research, power and ease of use have earned SNTP an enthusiastic reception in a
broad range of scientific and engineering endeavours.
• Graph, analyse and manipulate lime series data.
• Sample from ACDA, Twin-X or sound samplers, 16 ch/12
bit/lOkliz.
¦ ASCII import and binary MSDOS conversion.
• lT'P formal, display 20 channels, 2 Million plus points,
• Over 80 functions plus Custom interface with source code.
• FFT based filtering (tested up to 60,000 points).
DIGITAL DYNAMICS, 739 Navy Street, Santa Monica, CA 90405 ^el: 213-396-9771__ J information is stored in the block table in reverse. For example, the first word in the table points to the file’s last block, and die last word in the table points to the file’s first data block. Zeros fill any of the unused slots in the list.
Most of die file header block is exactly like the directory block (protection bits, comments, time stamp, etc.) The only differences lie in die file size counter and the extension pointer.
The file size counter holds the file size in bytes (word 81). The extension pointer (word 126) is used whenever a file exceeds 72 blocks in length, in a file larger dian 72 blocks, AmigaDOS stores the remainder of the file's block information in a file list block. The extension pointer points to die file list block.
Although the file list block is similar to the file header block, it does not contain as much information. It simply holds pointers for the next 72 disk blocks and a pointer to the next file lisL block. The pointer to die next file list block is zero if no more blocks are used. Table Four shows the file list block's format.
A file data block contains a small header that describes the block and has a block type of T.DATA. The value of T.DATA is eight. The data block header consists of five words.
The first word of the data block points to the header block for that file. The second word contains die data blocks se¬ quence in die file (a one for the first data block, a two for the second, etc.). The third word contains the number of data bytes Mask Now Smppmg!
Version 2.0 TM The F-IBASIC Language System A Beqinner Can i j- * i ¦¦ Immediately F-BASIC System Version 2.0 'An Enhanced Compiled BASIC Language 1 Extensive Control Structures ¦ LOCAL & GLOBAL Variables 1 Ultra Fast Floating Point 1 RECORD Structures & Pointers 1 INCLUDE & APPEND Separate Files 1 PATTERN Matching Support 1 Easy high level access to AMIGA Screens, Windows, Menus, Sound, Speech, Graphics and Events.
The F-BASIC System Also Has A Source Level Debugger
• Debug F-BASIC programs al the SOURCE level.
• Fully windowed Intuition interface—windows for Source Code,
68000 Registers, Memory Dumps, Program Variables, Etc,
• Set break points and single step trace.
• Display and change all variables, arrays, or RECORDS by name.
• Full reverse-assembler included.
• A comprehensive User's Manual with full documentation of all
SLDB supported features and windows.
The F-BASIC™ Language System 2.0—Only .95 F-BASIC™ System and Complete SLDB-Only 9.95 Available Only From The Manufacturer!
SEND CHECK OR MONEY ORDER TO: DELPHI NOETIC SYSTEMS, INC. Post Office Box 7722 Rapid City, South Dakota 57709-7722 Credit Card or C.O.D. Call (605) 348-0791 in the current data block. A block normally has 488 data bytes in it, but the last data block of the file may hold considerably less data. The fourth word contains a pointer to the next data block or zero if there are no more. The fifth word is the block's checksum. File data is stored from die sixth word onward.
See Table Five for a sample of a data block used by standard AmigaDOS. The Fast Filing System uses a specially formatted data block that contains 128 words of data. This is accomplished by dropping die data block checksum and other information in die data block header. By doing so. AmigaDOS is faster and provides more usable space on a diskette. Table Five shows the format of a disk data block.
Disk explorations Exploring .AmigaDOS disks is easy, but first you will need some sort of disk editor. Fortunately, a variety of commercial and Public Domain disk editors are available.
The best Public Domain disk editor is DiskX, written by Steve Tibbett of VirusX fame. The program is available from most local BBS and commercial networks and costs far less than its commercial competitors. The newest version even supports boot block backup, which allows you to copy your disk's boot blocks into a disk file. If the boot block is later damaged by a virus, DiskX will allow you to restore the boot block to its original form using die stored boot block data.
I recommend you get a copy of DiskX if you are inter¬ ested in exploring AmigaDOS disks. Using DiskX’s documenta¬ tion and the information provided in this article, you are well on your way to understanding AmigaDOS disk formats and using your knowledge to restore or repair damaged and deleted files.
DiskX does offer a feature for restoring damaged files, but this may not work in all cases. Since disk repair is difficult and depends on so many random factors, explaining it is beyond the scope of this article. But, simply put, the status of block pointers is the basis for restoring disk files. By learning how the block pointers work, you can leam how to repair disks. Hopefully, the knowledge presented above and tools like DiskX will speed you on your way. I have included a listing of some books and products to help you out. In the meantime, use this new knowledge and explore a few of your
disks, but be sure to use backups until you are experienced with disk structures and disk editors.
Helpful books and programs Books AmigaDOS Manual published by Bantam Books Amiga Disk Drives Inside and Out, published by Abacus Software Programs DiskX—Public Domain software by Steve Tibbet. Disk editor with boot block save feature.
The Disk Mechanic—Commercial software published by Lake Forest Logic, Inc. Extensive disk-utility package featuring a disk editor, a disk-repair program, etc. F-BASIC ond FaslCom are registered trademarks of DNS, Inc. AMIGA is o registered trademark of Commodore/AMIGA Inc.
• AC- Amazing Hardware Reviews Mpronrknor revieived by Rich J.
Grace Many Amiga users interested in boosting the performance
of their machines have invested in 32-bit accelerator cards.
These usually run 68020/68881 chips with 32-bit memoiy. Such hardware usually works, but at a high price, and with slight software incompatibilities. CMI of Portland, Oregon has stepped forward with an alternative. It is a straight 68000 accelerator, running a 16 Mhz 68000 chip at 14.3 Mhz, with a socket for an optional 68881 floating-point chip driven by a clock crystal running at either 12.5 or l6 Mhz. (The clocking for the 68881 can differ from and exceed the speed for the 68000 because the bus clock inputs for each chip are asynchronous. Hence, the math chip can run considerably faster
than the CPU.)
The accelerator comes as a piggyback microprocessor- replacement board (for till machines, including the 2000) with the 68000 chip installed. Installation is fairly simple, requiring only a modicum of basic hardware experience. The documenta¬ tion, bound in a palm-sized booklet, is functional but weak. It omits many details, such as a discussion of software packages expected to benefit from a math chip installation. Also omitted is a more extensive discussion of programming recommenda¬ tions for users wishing to exploit the greater processor power now available.
A strange bird As far as can be detennined, there are no hardware incompatibilities with the CMI accelerator. This was thoroughly tested on the author’s Amiga 1000 system with a previously installed "Insider” 1 Megabyte RAM piggyback board. The installation produced the bizarre configuration of two piggyback boards stacked on die microprocessor socket. In spite of this, die system booted seamlessly. This in itself spoke well for CMI's product-quallty control and hardware compatibilides. .Amiga 1000 owners widi Insider boards can relax, CMI also provides a set of “software switches” for
install¬ ing the accelerator hardware into the system, The programs, InstallMC and ToggleSpeed (for installation of die 68881 and the 14 Mhz 68000, respectively), are completely stand alone, and can lie called from the Startup sequence or enabled from an icon. These programs are veiy efficient and small, and should fit on a crowded Workbench disk. One problem with the boartl's packaging is that no Benchmark programs are provided with diese switch utilities (at least this was the case last September when the board was purchased). From die user’s standpoint, this is not a wise omission.
Minimal speed increase Overall system performance was not substantially affected by the CMI accelerator. The average spreadsheet calculation was about 20% faster. Graphics functions in programs such as Dpaint and Deluxe Photo Lib ran anywhere between 10 to 30% faster.
Benchmarks of programs such as die Sieve of Eratosthenes under Aztec C (see inset) showed no improvement whatsoever even with die 1.3 math libraries included in the compilation.
Even windowing routines in Workbench showed little or no apparent enhancement in speed.
For any veteran Amiga user, die question is: “Why is the system performance so minimally affected?” Many users are no doubt aware that the Amiga runs a 14.32 Mhz system clock.
This 14.32 Mhz bandwiddi is divided equally between die Amiga graphics processor and the 68000 CPU. When a CPU accelerator is introduced into the Amiga system, possibly using frequency multiplier circuitry to boost die clock speed to the main processor, die “clock” driving die graphics chip remains unaffected. As a result, mundane operations, such as windowing and most conventional bitmapped graphics operations, do not benefit substantially from the faster CPU speed. (This is the case widi die Amiga 2500.)
Light at the end of the tunnel Some time after these tests were done, however, 1 obtained a disk of programs from a local vendor that were evidently tailored specifically to the accelerator. One program draws a sine wrave pattern on the Amiga screen. The respective times for die three possible configurations (Plain vanilla 7 Mhz, 14 Mhz 68000, and 14 Mhz 68000/16 Mhz 68881) are as follows (in seconds): Plain vanilla: 53.8 54 Mhz 68000:45.2 68000/68881: 2,2 The test showed a speed increase of 22 times over the original system. A second program draws a series of concentric circles on the screen.
The comparative times for the same three configurations were as follows (in seconds): Plain vanilla: 56.5 14 Mhz 68000: 46.2 68000/68881: 8,6 The dramatic increase in speed reflected in die two programs compares exacdy svidi die performance of the Amiga 2500 system.
This raises another question : “Do any ray-tracing pro¬ grams or language compilers realize this level of performance, even wrhen tailored to the 32-bit accelerators available?” Based on the tests I've has done, the answer is no. This is because the CMI accelerator architecture differs from other 32-bit cards in that it treats the 68881 as a peripheral, rather than as a true coprocessor. This is more than likely done out of necessity, as the 68881 was designed more as a coprocessor to die 68020 rather than to the less-advanced 68000. As a result, certain rav- tracing programs that support the
68881 (Sculpt 3D, for ex¬ ample) will crash on a CMI-insialled machine.
__(continued) Corrections DeluxePaint HI In Louise Brinkman's Las Vegas COMDEX Report (AC Vol. 4.1,
p. 48), some errors were reported regarding the list price and
upgrade policy for Electronic Arts’ DeluxePaint ED. The actual
list price for DeluxePaint III is S149-95. Also, Electronic
Arts is offering two upgrade policies. The company will send
DeluxePaint III to DeluxePaint II owners who send in the
program’s manual cover and .00 plus .00 shipping and
handling. Any customer who purchased DeluxePaint II between
December 1, 1988 and March 1, 1989 can upgrade to DeluxePaint
III for .00 plus .00 shipping and handling.
Customers must send original DeluxePaint II receipts and manual cover.
Printscript in his AmiEXPO NY report (Vol. 4.4, p. 49), Steve Gillmor reported that C Ltd. Manufactured the Postscript emulator Printscript. Printscript is, in fact, produced by Pixelations.
Spring ’89 Product Guide
P. 40 Express Paint 3.0 Full-function paint program. Viraial
pages, unlimited undo's, and 3-D perspective; rotating,
distorting, stretching, and mirror¬ ing. Excels in test
handling and printing. The only paint program that provides
text fill into and around irregular shaped objects. Control
font styles, sizes, justification, margins and line spacing to
and from text. Supports PostScript, colored banners, and
poster-sized output. Color cycling, 3-D anti-aliasing tools,
gradient fills, more. 9.95 Brown-Wagh Publishing
(previously listed as Broderbund Software, Inc.)
P. 98 Accolade (address change) 550 South Winchester Blvd. Ste
200 San Jose, CA 95128
(408) 985-1700
P. 104 Metran Technology (address change) PO Box 82538 Tampa, FL
33628
(813) 978-3551 Our apologies to the companies involved and to our
readers for any inconvenience this may have caused.
This raises a second question for the user: “Will software vendors begin supporting the CMI accelerator I have just purchased?" The answer to this is also a (qualified) no. I contacted several vendors to determine if any such plans were in the works. There were none. According to discussions with a representative from Seven Seas Software, (they put out DOUG'S MATH AQUARIUM—an excellent program which seems to be a natural for this type of hardware) one problem seems to be that CMI has not approached diem about support ventures. This really is a shame, given that other machines, such as die
Macintosh, have very close-knit developer groups.
Conclusion The CMI accelerator has great potential, particularly when the math chip is installed. In comparing operation times between the Amiga 2500 and a Cml-installed machine, the CMI did not suffer in certain applications. However, with only the 14 Mhz 68000 chip installed, system performance is only slighdy better. For an alternative to die prohibitively expensive 68020/ 030/881/882 accelerators to be effective, software support is an absolute necessity. However, as a programming tool, a CMI- installed system is very enticing.
Concerning compiler support, as noted in the Sieve Benchmark test, the compilation and run was done with Aztec C
3. 6a. Admittedly, the author is not an expert programmer. Many
readers may want to do some creative work to explore the 68881
configuration in die type of system discussed here. Those who
do so and have interesting results to report can write to me
in crare of AC.
Listing One /* Sieve Benchmark
* * Originally written in small C
* * On the IBM at 3yte
* * Magazine. Adapted by Rich Grace.
* * Recompiled under Aztec 3.6a. -/ finclude<stdio.h> fdefine
size 8190 #define LOOP 100 fdefine TRUE 1 idefine FALSE 0 int
tblock[4); char flags{size + 1); main I) { int i, prime, count,
k, iter; puts ("Sieve benchmark!\n") printf("%d iterations'll",
LOOP) ; for(iter a 1; iter <= LOOP; iter++); I count ¦ 0; for(i
“ 0;i <= size; i++) flags[1] = TRUE; for (i = 0;i <= size;i++)
I if (flagsfi]) { prime*i+i+3; for(k = i + prime; k <= size; k
+° prime} flags[k] = FALSE; count++; 1 \ 1 1
• AC- Diskless Compiling Make development easy with COMPILE, a
full-featured programmer's workbench.
[ DmlKwent Systei Options by Chuck Randoms One of ±ie biggest problems facing C programmers on the Amiga (besides trying to make sense out of the ROM Kernal Manual) is tire long delay in compiling, We sit and watch the diskette drives grind and churn to load all of tire include files, and tire compiler creates all its intermediate files and proceeds with the com¬ piles. The first and most obvious solution is to buy a hard disk drive, since the speed of tire drive will solve the delays. Unfortunately, widr tire current pricing of hard disks for the Amiga, you would need a loan on par with the
national debt to afford one.
Figure One The COMPILE Developer's Environment Edit, (wile, Link m! Exeate ? Cwfil# Prty» r-< «»Pm ? W Mid Edit Pr*yw IWEfedele ? DebqPrwm n SteiftppiicstienPf'mii Pj feB&irtd&ry Utility Ch eaper Solu tion While the pricing of hard disks is high, the price of expanded memory is still relatively cheap. The price of the Michigan Software Insider board and the Spirit Technology boards are still within the reach of mere mortals. With a large bank of expanded memory, tire required files can be transferred up into the RAM disk, and the entire process can proceed smoothly. You can tell the compiler
to redirect the temporary files to the RAM disk, and the source module of the program to be compiled. Any required include files can be copied to the RAM disk. The entire compile can then proceed without disk access.
Be survived. Even with the benefits of the recoverable RAM disk, the programmer must still load the 20+ include files manually.
11) e COMPILE Developer’s Environment To solve this problem, I
present “COMPILE", a developer's environment. COMPILE is a
full-featured programmer's work¬ bench. It is configurable
and customizable. To augment COMPILE, 1 have presented a
suggested startup-sequence and disk allocation to make
development easy.
To use it, tire programmer starts COMPILE and identifies the program to be worked on. COMPILE will then copy die program from the source diskette onto RAD:, While it is being copied, tire program is parsed to locate any ^include statements.
These files are queued to be loaded to RAD: also. While the include files are being copied, they are parsed for nested includes. This process can go on indefinitely if you have includes within includes within includes.
COMPILE will look for die requested include files in the current directory. If the requested file is not in the current directory, COMPILE will search the include paths specified in the INCLUDES environment variable. If the required include file is already loaded onto RAD:, it will be detected before copying and will not have to be loaded again. Once all the required The only problem this solution poses is the large, complex amount of manual effort involved in identifying and copying all the requisite include files. The system include files are nested— include files load other include files,
It is not uncommon to have 20 to 30 include files for an average program. This is a daunting task, to say the least. Even if one had the patience to load all these files by hand, die first time the GURU rears its ugly head, they are gone. The whole process must be then be started over.
A solution to the RAM disk problem is Workbench 1.3's recoverable RAM disk (RAD:). This device driver will allow a RAM disk to survive a visit to the GURU. This is not 100% foolproof because, if the program being developed really goes astray, RAD: can still be trashed, but the majority of crashes can (continued) Erich Public Relations Consultants Stein & Associates, Inc. Because the quality of your reputa tion is just as important as the quality of your product.
PO Box 695 Denver, Colorado 8C201 TEL [303] 733-3707 include files have been loaded, any include files currently on RAD: that tire program doesn't need compiled are deleted to free up dreir space. This feature can be disabled by setting an option which causes COMPILE to retain all includes it loads onto RAD:. This will help speed things up if you switch between programs frequently. At the completion of the load step, the program to be modified has been loaded into RAD;, and all of the required includes are loaded with it.
COMPILE Gadgets COMPILE has several gadgets and menus to control its actions. COMPILE has eight gadgets in its main window: Edit, Compile, Link, Make, Debug, Run Program, Run CLI utility, and one gadget labeled Edit/Compile/Link and Execute (See Figure One).
The first four gadgets are self explanatory as they Edit, Compile, Link, and Make the program being modified. The program is already loaded into RAD: so, if you use the sug¬ gested startup sequence, your favorite editor and tire compiler and linker are also on RAD:. The process is very fast. A 40K source module will load into the editor in about 2 to 3 seconds.
This includes die time needed to load the editor. If your makefile specifies additional object files to be linked to the main program, die makefile should specify' diese files as conditional for the compile and copy them to RAD: if diey are not present.
See die makefile supplied for making COMPILE for the syntax of tli is feature.
Totally It ID: The Debug gadget will load Aztec's SDB™ and prepare the program for debugging. Since COMPILE assumes a total RAD: environment, SDB will look for the source, executable, and .dbg files on die RAD:. Currendy, COMPILE does not copy diese files off the disk. It assumes that frequent changes will be made during program development. Thus, the program must be run through a compile phase to get the executable and .dbg files onto RAD:. The Run Program gadget will execute the program you are working to test it. The Run CLI Utility will allow users to run dieir favorite mouse-based file
manager (DIRUTIL, WIZARD, etcLio allow file manipulation without having to exit COMPILE, The Power Gadget The last gadget (Edit/Compile/Link) is the real power of die COMPILE environment. This gadget starts an intelligent compile sequence. Usually when a program is being developed, it is run through a series of Edit, Compile, Link, and test cycles.
This gadget will automate the process. When diis gadget is clicked, the program is loaded into your favorite editor, where you can modify' it as needed. When die file is saved, and you exit the editor, the compile starts automatically. The output of die compile]- is routed to a file on RAD: so any error messages are retained for future reference. If die compiler returns a non¬ error condition, COMPILE will then start the Link phase, The linker output is also directed to a file on RAD:. If the linker returns a non-error condition, the new version of the program is executed, and the fruits of
your labor can be examined.
Back to the Editing Board If an error condition is detected in either the compile or the link phase, the whole process is halted, and COMPILE restarts die editor so the problems can be resolved. If the editor you are using is a multi-buffer editor allowing more than one file to be loaded at once, both the error file and the source module are loaded simultaneously. You can toggle between die error messages and the source as you debug the program. If your editor does not support multi-buffers, then only the error file will be loaded. You must then make note of the errors, load the source file,
and fix diem.
Mn Iti-Bufjered Ed iting COMPILE was really developed to make use of a multi¬ buffer editor. If your editor does not support multi-buffering, and you really don't want to change editors because you are accustomed to the command structure, take a look at an editor called Uedit, by Rick Stiles.
Uedit is a programmable editor. It comes with a prede¬ fined keyboard mapping, but the user can reconfigure it to emulate any editor or wordprocessor. Configuring the editor is easy, and it is amazing what can be performed in this wonderful program. This is one tool any serious programmer should look at. I use an editor I am very comfortable with on odier ma¬ chines, so 1 have configured Uedit to emulate that editor exactly. The keystrokes are identical, so I don't have to think about which machine 1 am on.
Once you’ve debugged the program, saved the file, and exited die editor, the whole compile, link, and execute process will start up once again. This allows an easy development cycle.
Remember, since everything is on RAD:, the disk drives haven't been accessed at all while this has been going on.
Since it is still possible to trash RAD: with a truly errant pro¬ gram, COMPILE has an option switch that will force it to copy the source, object, executable, and .dbg files back to the diskette each time the source module is changed. It is good to set this option early in program development. This will require some disk access, but it will allow' recovery from a total system trashing with all of your code intact. When your program starts to mature and becomes relatively stable, this option can be turned off, and COMPILE will only copy the program back to the diskette when a new program is
being loaded, or when COMPILE is exited.
The Main Menu Bar There are four menu items on the main menu bar. The first is PROGRAM. This allows the user to specify the name of an existing program, or one to be developed, The QUIT option causes COMPILE to copy the source, object, executable, and .dbg files back to the diskette and delete all of the files it copied up to RAD: before it stops. This graceful exit leaves the system in the state it was in before COMPILE wras started.
The second and third menu items allow' configuration of COMPILE. Since COMPILE creates an environment iiie Cenv) to go with each file it w'orks on, tire configuration can be set differently for each program. When a program is loaded into COMPILE, the corresponding environment file is loaded, and the switches and options for COMPILE are set as they were when the program was last worked on.
The second menu item lets the user set the various flags and switches that control the execution of the compiler, linker, and programs that COMPILE calls. Tire flags for tire editor, compiler, linker, and the program being modified can be set here. When dre specified program is executed, the flags specified in this menu are passed to the program. For example, when dre compiler is called by COMPILE, it is called with dre command: cc -flags program.c where cc is tire name of your compiler. This, too, is customi¬ zable as we will later see. In addition to the flags, the libraries to be linked can
be specified in this menu. If you are develop¬ ing a program with only one or two additional object modules, and you really don't feel like making a special makefile, COMPILE will let you specify the names of additional object files that should be linked to dris program to make the execut¬ able file. These files are not maintained by COMPILE and, as such, you are responsible for moving them to RAD:. If the files are small, you can leave them on dre diskette and access them from drere with minimal degradation. If the program is com¬ posed of many object files, a makefile is die best solution.
But for quick little programs built from pieces of existing code, this is a nice feature.
If the program being developed is composed of many object files and is built via a makefile, there is a feature of COMPILE that eases this process. The last entry on the Flags menu aIlowrs the user to set the name of the program to be made. If the program consists of 5 different modules, each module should have the name of the master executable file specified here. No matter which of the five files is being edited at the moment, the make utility will be passed die name of the MASTERPIECE PROFESSIONAL FONT COLLECTION® 20 DISK SET The largest collection of fonts and clip art available in a
single package for the AMIGA.
110 DIFFERENT FONT STYLES This doesn’t mean 10 sizes of 11 fonts. It means 110 DIFFERENT fonts.
LARGE SIZES Specially designed for video work. 95 % of the fonts are over 100 pt. Tall. Easily resized smaller.
PATTERN CLIP ART 141 hi-res Dpaint II pages. There are thousands of objects and examples.
ALL FONTS ARE HI-RES BRUSHES - 2 disks full of color brushes.
COLORFONTS- 4 full disks.
100 PAGE MANUAL - Full size font printouts.
20 DISK SET - ONLY 9.00 Contact vour local AMIGA dealer or order direct from AROCK Computer Software, 1306 E. Sunshine, Springfield, MO 65804 1-800-288-AROK Dpaint II is a registered trademark of Electronic Arts.
Master program, and the executable file will be created cor¬ rectly. If no program name is specified here, the name ol the program currendy being modified is passed to make.
The third menu item allows the customization of tire “C” environment. It allows you to specify the program names for the editor, compiler, linker, and mouse-based CLI utility that are to he invoked when called for. In addition, the location of the intennediate files from dre compiler can be redirected from an item on this menu. The default location is RAD: but, if for some reason you want to change this, you can from this menu.
The last item on this menu lets you save the current flags, switches, and options as the default environment. When a program is loaded into COMPILE for dre first time, or a new program is started, it does not have a corresponding .env file.
The defaults saved with this menu option will be used for these programs. Any changes made after loading the new program will then be saved in that program’s .env file for future use.
The last nrenu item lets you set the options that control how COMPILE will handle Ure program being modified. Each item on this menu is a toggle nrenu gadget with a check mark to indicate the status of tire switch. You can specify whether tire program should be copied back to disk each time it is modified.
This is also where you specify whether the include files should be parsed when the program is loaded. If tire program to be modified is an include file and will not be compiled, this option should be turned off so tire whole parse is not com¬ pleted. This will save time because RAD: doesn't need the other (continued) include files since die file will not be compiled. A switch can be set to indicate whether the editor being used has multi-buffer capability.
The last switch controls whether COMPILE deletes die include files left on RAD: from die last program loaded diat are not necessary for the currendy loaded program. Widi diis switch on, RAD: space is conserved. However, if you are bouncing between several modules while you are developing, it would be faster to turn this option off and have COMPILE retain all the needed include files for all die modules that you are working on. This way, when the program is loaded into COMPILE, the include files are still loaded, and you are ready to go.
A couple of words about the source code and its contents.
The file name requester which is called when a program is loaded is currently a string gadget in diis version. If you have a copy ot the source for Charlie Heath’s file name requester and his safeclose function, die code is in the program to support it, but it is commented out (see the get_file_nameO function). The makefile is designed to handle these two files. If you don’t have a copy of the source, it is available In Public Domain. If you choose not to use die file requester, remove the references to the two files in the makefile and all will be well.
The Edit/Compile/Link/Execute gadget that invokes die "smart compile” feature of COMPILE will keep you in the loop until you get a dean compile. To break out of the loop without getdng a clean compile, your editor must be able to reairn a non-zero return code. Uedit can be set to return a non-zero return when the “Abort” option is taken, and it will return a zero when you exit gracefully. You will have to experiment widi your editor to see whedier it can return a non-zero return if needed.
The suggested diskette configuration for COMPILE to work efficiently is as follows: Strip all unneeded files from the boot disk for your compiler. Your objective here is to get enough room to fit all of the indude files on die boot disk, Take the compiler, assembler, debugger, linker, COMPILE, and any utilities you use heavily during die development process and put them on a second disk labelled C_Lib: in a directory called To_RamDisk, Remove all of the link libraries from die boot disk, and move the libs you use to die C_Lib: disk in a directory called Lib.
If you use the suggested startup sequence, diese libraries and the utilities and programs will be copied up to RAD: where they can be accessed quickly. Adjust die size of RAD: according to the amount of memory' in your Amiga and the number of programs you are copying to RAD:, as well as the type and size of die programs you usually develop. This balancing act might take a few tries to get right. I like to keep 100 to 200k free on RAD: after all die utilities and libraries are loaded.
I hope this will provide you with a user-friendly program¬ ming environment, as well as help make your development hours more productive. By no means is this the final or ultimate workbench, but it should give you a start. Take the source, and tweak it to your heart’s content. Let me know about any improvements you are able to make.
Listing One Suggested Startup-Sequence stack 10240 mount rad: fast fonts if EXISTS rad:c echo "Vdisk already established" skip nocopy endif echo "Insert C_Lib disk in dfl:" rr.d RAD: c echo "Establishing VDO:C Directory" copy C_lib:To_Rarcdisk/#? RAD:c path RAD:c echo "Creating Needed directories" did RAD:C_Compile nd RAD:lib mb RAD:s rod RAD:t md RAD:make md RAD:compile md RAD:include red RAD:include/exec md RAD:include/intuition md RAD:include/graphics md RAD:include/devices md RAD:include/libraries echo "Establishing RAD:S Directory" copy sys:s/Data! RAD:s copy sys:s/Help! RAD: s echo
"Copying Link Libraries to RAD:" copy C lib: lib/rva32 . Lib RAD:lib/mx32.lib copy C”lib:lib/c32.iib RAD:lib/ lab nocopy echo "Setting System Paths and Assignments" path RAD: c path sys:bin assign s: RAD:s assign t: RAD:t echo "Establishing Compile Paths" set CLIB=RAD:lib/!C_lib:lib!SYS2:lib!!
INCLUD£=RAD:include!RAD:make!Manx ciinciude CCTEM?=RAD:C Comoile/ set FUNCLIST=SYS2:lint/manx.c D3INIT=s:.dbinit echo "Insert C_Disk in dfl:" echo " " cd C^Disk:source run compile Echo "ok" Listing Two Compile.h ?include "intuition/intuition.h" jinclude "stdio.h" iinclude "exec/types.h" finclude "exec/nodes.h" ‘include "exec/lists,h" Iinclude "exec/libraries. H" ?include "exec/ports.h" ?include "exec/interrupts.h" ?include "exec/io.h" ?include "exec/memory,h" ?include “libraries/dos.h" ?include "libraries/dosextens.h" ?include "ctype.h" ?define INTUITIONJIEV 31L ?define GRA?HICS_REV 31L
?define S7ATUS_LINE &IText32 ?define ALLOCSIZE 3000L ?define DELETEINCLUDES Menuitera4 ?define MULTIBUFFER Kenultem3 ?define PARSEINCLUDES Menultem2 ?define COFYDISK Menulteml struct Screen "Screen; struct Window "Window, *Second_Windcw, "File_wlr.bow, *Main__Window; struct IntuitionBase *IntuitionBase; struct RastPort "rastport,*Second_rastport; struct GfxBase "GfxBase; struct IntuiXessage "message; struct Process "Process; struct NewWindow FileNewWindow - { 0,2,600,180, 1,2, MENUPICK | NEWSI2E 1 REFR2SHWIND0W 1 ACTIVEWINDOK I MQUSEBUTTONS ! RAWKEY | MQUSEKQVE, WINDOWDRAG I WINDQWSIZING ]
SIM?LE_RSFR£SH | ACTIVATE | WINDOWDEPTK, NULL,NULL, "Choose File", NULL, NULL, 40,45,0,0, CUSTOMSCREEN }; ULONG message^class; APTR message_address; USHORT messagc_code; char args[101[300]; char "argpilO]; int i,exit_flag,rtncd,edit_load, header^ptr, dirptr, fileptr,include_path_count; char include_paths[10] [50],header_file3[50] [50],junk(10] [503 , *strptrl, *strptr2, *strptr3,msg[8Q]; struct FlleLock *pdlr; struct FilelnfoBlock »dir_info; static struct dirent *FirstEntry; static struct dirent "NextEntry; There are fabulous savings on all these goodies plus a \ FREE mouse pad with orders
over S100.
FILE *stdprn; UBYTE prcgram_nane[40J, edit flags (20), compile flags [20], link_flags [20], link_libs[80]; U3YTE runtime flags*T20] , obj to_link(30); UBYTE object_location[30],directory_utillty^name[40]; Arkancid S20.95 AudioMasterll
71. 95 Aunt Arctic Adventure
25. 95 BattleChess
34. 95 Black Lamp
18. 95 Dark Castle
32. 95 Deluxe Music 2.0
72. 95 Deluxe Paint III
109. 95 Donald Duck's Playground
19. 95 Double Dragon
29. 95 Dragon’s Lair
41. 95 Dungeon Master
27. 95 FA 18lnlerccptor
37. 95 Falcon
36. 95 tntroCad
56. 95 KindWords
59. 95 King's Quest 1
37. 95 King'sQuestll
37. 95 King's Quest III
37. 95 Lords ottheRisingSun 34,95 Oblilerator
23. 95 OutRun
34. 95 Phaser
63. 95 Pioneer Plague
28. 95 Ports o! Call
35. 95 UBYTE edit program name[40],def_progran name[40], def_dir
[30],ccmpile_command[40], lTnk_command[4QJ; UBYTE
temp[300],dir_files(100][5 0],dir_di rs[10)[50],f ile_t
ojnake £ 50]; /* Screens, Windows and Gadgets •/ /• "Wait a
minute screen and messages */ struct IntuiText WaitText4 = (
3, 0, JAM2, 128,37, NULL, "Process*, NULL ]; struct IntuiText
Wait Text 3 ¦» { 1, 2, JAM2, 151, 26, NULL, &WaitText4 I;
struct IntuiText WaitText2 “ 1 3,0,JAX2, 52,26, NULL,
"Running the", &WaitText3 ]; struct IntuiText WaitTextl - (
1, 0,JAM2, 87,14, NULL, "One Moment Please.,.*, AwaitText2 };
Ideflne WoitTextList WaitTextl struct NewWindow
WaitWindowStructure ¦ [ 41, 19, 365,54, 0,1, NULL,
WINDGWDRAG^WINDOWSE?TH, NULL, HULL, "Process Window", NULL,
NULL, 5, 5, 640,200, WBENCHSCREEN ); Publisher Plus S49.9S
Rocket Ranger 35.95 Sinbad&ThroneolFalcon 35.95 Sonix 56.95
Spellbound 26.95 SwordofSodan 35.95 Terrorpods 23.95 The
Three Stooges 35.95 TV Sports Football 34.95 TypingTulor
23.95 VJ.P. Virus protection 29.95 Warlock 20.95 Who Framed
Roger Rabbit 32.95 Enhancer Amiga DOS 1.3 20.95 Accessories &
Hardware Epyx Joystick 14.95 ErgoStick Joystick 19.95 Mouse
Pad 4.95 California 3.5'drive 145.95 Supra2400 Baud Modem
145.95 Spirit SC 501 'A Meg.
Trapdoor internal expan¬ sion with clock calendar for Amiga 500. OK 63.95 plus shipping & handling Don’t see it here? We've probably got it. Call us.
:&!
Your Amiga Source PO Box 575719 Murray, Utah 84157-5719 1 800 347 8004 COMP U TER NULL, 0, 79, 0, 0,0,0,0,0, 0, NULL, NULL }; USHORT Reque$ter_BorderVectors2[] - (0,0,294,0,294,10,0,10,0,0); struct Border Requester 3order2 ° (
- 2,-2, 3,0,JAM1, 5, Requester_BorderVectors2, NULL /* String
Requester with OK and Cancel Gadgets ¦/ USHORT
Requester_3orderVectorsl[ ] - 10,0,57,0,57,14, 0, 14, 0, 0};
struct Border Requester Borderl ¦ (
- 2,-1, 3, 0, JAM1, 5, Requester_3orderVectorsl, NULL In¬ struct
IntuiText Reauester_IText1 ¦ [ 1, 0,JAM2, 3,2, NULL, "Cancel",
NULL } ; struct Gadget Requester_Gadget3 - I NULL, 227,51,
54,13, GADGHCOMP, R£LVERIFY-*GADG IMMEDIATE, BOOLGADGET,
(APTR)&Requester_Borderl, NULL, Srequester Itextl, 0, NULL, 3,
NULL I; UBYTE SlBuffer2180]; struct Stringlnfo
Requester_GadgetSI2 » { SIBuffer2, (continued) struct Gadget
string_gadget = { iReauester Gadget3, 28,23, 291,6, GADGKCQMP,
RE LVERIFY+GADGIMKEDI ATE, S»R u rtj j l .,
[APTR)£Recuester_3crder2, NULL, NULL, 0, (APTR)^Requester
GadgetSI2, 2, NULL } ; USHORT Requester_BorderVectors3() =
(0,0,57,0,57,14,0,14,0,0); struct Border Reauester_Border3 = {
- 2,-1,
3. 0,JAM1, 5, Reque st e r_Borde rVect ors 3, NULL in¬ struct
IntuiText Reouester_ITexc2 = [
1. 0, JAM2, 18,3, NULL, "OK", NULL In¬ struct Gadget
Requester_Gadgetl - { fistring gadget, 37,51, 30,7, GATGHCCMP,
RELVERIFY-*GADG IMMEDIATE, 300LGADGST, (APTR1SBorderi, NULL,
filTextl, 0, NULL, 13, NULL Retail S34.95 USHORT
3orderVectors2{) = {0,0,607,0,607,9,Q,9,Q,0); struct Border
3order2 = { An easy to use checkbook program that / A
joystick/mouse does many functions that were / interface that
allows previously cumbersome. / rapid fire action.
- Fast checkbook balancing / - Has standard 4ft cable
- Reports by date, class codes,/ - Adjustable tire rate and check
number /- Compatable with all Amigas
- Easy data entry process/- Monitor rapid fire with LED
- Custom budget setup / - Works with your favorite and budget
analysis / joystick or standard mouse
- Custom setup for/-Blow away your old game scores check printing
/ - Doesn't interfere with normal operation
- Works with / while in manual fire mode all Amigas ¦/-Comes with
full 30 day warranty
- Up to 20 rounds per seconds Retail .95
- 2,-1, 3,0, JAM1, 5, 3orderVectors2, NULL struct Gadget Gadgeti2
a { £debug_gadget, 11,166, 604,8, GADGHCOMP, RELVERIFY,
BOOLGAOGET, (APTR)4Sorder2, NULL, NULL, 0, NULL, 12, NULL
USHORT BorderVectors3[] = (0, 0, 34, 0, 34, 9, 0, 9,0, 0);
struct Border Border3 = {
- 2,-1, 3, 0, JAM1, 5, BorderVectors3, NULL Make check or money
order payable to: Micro Momentum, Inc. 100 Brown Avenue
Johnston, R1 02919
(401) 949-5310 Amiga It* a registered trademark of CRM.
54,13, GADGHCOMP, RELVERIFY+GADGIMMEDIATE, BOOLGAOGET, (A?7R)&Requester_Border3, MULL, ^Requester Itext2, 0, MULL, 1, NULL struct Gadget directory_utility_gadget = ¦ £,Gadgetl2, 174,155, 31, S, GADGHCOMP, GADGIMMEDIATE, BOOLGAOGET, (APTR)&3crder3, NULL, NULL, 0, NULL, 11, NULL USHORT 3orderVectcrs4[] = {0,0,35,0,35,9,0,9,0,0); struct Border Bcrder4 = {
- 2,-1, 3,0,JAM1, 5, BorderVectors4, NULL struct NewWindow
RecruesterWinaowStructure = { 6,15, 346,76, 0,1, GADGETDOWM,
SIMPLE_REFRESH+ACTIVATE, 6Requester_Gadgetl, NULL, "Input your
Choice", NULL, NULL, 5,5, 640, 200, WBENCHSCREEN I; /• Main
Screen and control gadgets */ USRORT BorderVectorsl[] =
(0,0,33,0,33,8,0,8,0,0); struct Border Borderl = {
* 2,-1,
3. 0,JAM*, 5, BorderVectorsl, NULL I; struct IntuiText iTextl = {
1. 0,JAM2,
46. 0, NULL, "Debug Prccraz*", NULL I; struct Gadget debug_gadget
NULL, 366,102, struct Gadget run gadget = 1 i>directory
utility gadget, 173,140, 32, 3, GADGHCOMP, RELVSRIFY *GAD
GIMMEDIATE, 300LGADGET, (APTR) £.Eorder4, NULL, NULL, 0,
NULL, 10, NULL USHORT BoraerVectorsS[] = (0,0, 27,0, 27,8,0,
8, 0, 0); struct Border Border5 s {
- 2,-1, 3, 0, JAM1, 5, BorderVectors5, NULL struct Gadget
maKe_gadget » { 4run gadget, 40,1^3, 24,7, GADGHCOMP,
RELVERIFY+GADGIMMEDIATE, 300LGADGET, (APTR)&Border5, NULL,
NULL, 0, NULL, 9, NULL 1; USHORT BorderVectors6[) = {0, 0, 33,
0, 33, 6, 0, 8, 0, 0}; struct Border Borderfi = {
- 2,-1,
3. 0,JAMl, 5, BorderVectorsS, NULL struct Gadget link_gadget » {
&make gadget, 367,83, 30,7, GADGHCOMP,
RELVERIFY+GADGIMMEDIATE, B00LGADGE7, (APTR)&Border6, NULL,
NULL, 0, NULL, e, NULL USHORT BorderVectors7[ ] = {0, 0,33, 0,
33,8,0,6,0,0); struct Border Border? = {
- 2,-1, 3,0,JAMl, 5, BorderVectors?, NULL struct Gadget
object^gadget •» { ilink gadget, 366,64, 30,7, GADGHCOMP,
RELVERIFY+GADGIMMEDIATE, BOOLGADGET, (APTR)43order7, NULL,
NULL, 0, NULL, 7, NULL USHORT BorderVectorsB(J =
{0,0,28,0,28,7.0,7,0,0}; struct Border 3crder8 = j
- 2,-1, 3,0,JAMl, 5, BorderVectorsB, NULL struct Gadget
edit_gadget ¦ { iobject gadcet, 39, 85, 25, 6, GADGHCOMP,
RELVERIFY+GADGIMMEDIATE, BOOLGADGET, (APTR)SBorderB, NULL,
NULL, 0, NULL, 6, NULL struct MenuItem Menultem4 ¦ I NULL,
0,33, 332,10, CHECKIT+I7EMTEXT+CQMM5EQ+MENUTOGGLE+
ITEMENA3LED+HIGKCOMP+CHECKED, 0, (APTR)fiIText2, NULL, 'D' ,
NULL, OxFFFF struct IntuiText Itext3 = {
3. 1,COMPLEMENT,
20. 1, NULL, "Multi-Buffer Editor".
NULL struct Menultem Menultem3 * { &MenuIten4, 0,22, 332, 10, CHECKIT+1TEMTEXT +MENUTOGGLE+1TEMENA3LED+ HIGHCOMP+CHECKED, 0, (APTR) 6 Itext 3, NULL, NULL, NULL, OxFFFF struct IntuiText Itext4 = {
3. 1,COMPLEMENT,
20. 1, NULL, "Parse ^include files", NULL struct Menultem
Menulterr.2 n ( sMenuItem3, 0,11, 332,10, CHECKIT
+1TEMTEXT+COMKSEQ+ME NUTOGGLE* ITEMENABLED+HIGHCOMP?CHECKED,
0, (APTR)SIText4, NULL, NULL, OxFFFF }; struct IntuiText
Itext5 = {
3. 1,COMPLEMENT,
20. 1, NULL, "Copy Program to Disk When Changed ", NULL struct
Menultem Menulteml * ( £MenuItem2, 0,0, 332,10, CHECKIT-*
ITEM7EXT+CQMMSEQ + MENUTQGGLE+ ITEMENABLED+HIGKCOMP+CHECKED,
0, (APTR)£IText5, NULL, 'C' , NULL, OxFFFF NULL, NULL struct
Menultem Menulteml0 = { fiMenuIteall, 0,55, 209, 10,
I7EM7EXT+H1GHCCMP, C, (APTR)£ Itext7, NULL, NULL, NULL,
OxFFFF struct IntuiText ItextS B {
3. 1,COMPLEMENT,
1. 1, HULL, "Name of Directory Utility ", NULL struct Menultem
Menultem9 ¦ ( SmenuItemlO, 0,44, 209,10, ITEMTEXT rITEMENABLED
*HIGHCOMP, 0, (APTR)fiIText8, NULL, NULL, NULL, OxFFFF struct
IntuiText Hext9 ¦ { 3,1,COMPLEMENT, 1, 1, NULL, "File Location
- .obj", NULL struct Menultem MenuIteaB » { £KenuIten9, 0,33,
209, 10, I7EMTEXT+1TEMENABLED+HIGHCOMP, 0, (APTR)&IText9,
NULL, NULL, NULL, OxFFFF struct IntuiText ItextlO ** {
3. 1,COMPLEMENT,
1. 1, NULL, "Link Command", NULL struct Menultem Menultem? = {
£Menultem6, 0,22, 209, 10, ITEMTEXT+ITEMENABLED+HIGHCOMP, 0,
(APTR) S Itext 10, NULL, NULL, NULL, OxFFFF USHORT
BorderVectors9[] ¦ {0,0, 29, 0,29,7, 0,7, 0, 0}; struct Border
Border9 = I
- 2,-1, struct Menu Menu4 = { NULL, 261,0, 75,0, MENUENABLED,
"Options", SmenuIteral 3,0, JAMl, 5, BorderVectors9, NULL
struct IntuiText Itextll - { 3,1, COMPLEMENT, NULL, "Compile
Command", NULL* struct Gadget full_process_gadget = {
iedit_gadget, 38,65, 26, 6, GADGHCOMP, RELVERIFY*GADGIMMEDIA7E,
BOOLGADGET, {APTR)£5order9, NULL, NULL, 0, NULL, 5, NULL i*
Gadget list */ struct IntuiText Itext2 a {
3. 1,COMPLEMENT,
20. 1, NULL, "Delete Uncalled Includes", NULL struct IntuiText
Itextfi ¦ { 3,1,COMPLEMENT, 1,1/ NULL, "Save Defaults", NULL
struct Menultem Menultemll ¦ f NULL, 0, 66, 209, 10,
ITEMTEXT+1TEMENABLED+HIGHCQKP, 0, (APTR) £ Itext 6, NULL,
NULL, NULL, OxFFFF struct IntuiText Itext? = {
3. 1,COMPLEMENT,
1. 1, struct Menultem Menultem6 * { &MenuItem7, 0,11, 209, 10,
ITEMTEXT+ITEMENABLED+HIGHCOMP, 0, (APTR)fiITextll, NULL, NULL,
NULL, OxFFFF struct IntuiText Itext12 = I
3. 1,COMPLEMENT,
1. 1, NULL, "Editor Command", NULL struct Menultem Menulcem5 *» {
& Menu It err,6, (continued) 0,0, 209,10,
ITEMTEXT+1TEMENABLED+HIGHCOMP , 0, (APTR)sIText12, NULL, NULL,
HULL, OxFFFF struct Menu Menu3 ¦ ( fiMenu4, 144,0, 111/0,
MENUENABLED, "Environment", 4KenuItem5 struct IntuiText
Itext13 = { 3, 1, COMPLEMENT, 1/1/ NULL, "Program Name to
Make", NULL struct Menultem Menultemie * { NULL, 0,65, 161,10,
ITEMTEXT+I7EMENABLED+HIGHC0MP, 0/ {APTR) &ITextl3, NULL, NULL,
NULL, OxFFFF struct IntuiText Itext14 = (
3. 1,COMPLEMENT,
1. 1, NULL, "Obj Files to Link", NULL struct Menultem MenuItemlT
- I SmenuItemiB, 0,55, 161,10, ITEMTEXT+ITEMENABLED+HIGHCQMP,
0/ (APTR)fiIText14, NULL, NULL, NULL, OxFFFF struct IntuiText
Itextlo = { 3,1,COMPLEMENT, I, I, NULL, "Run Time Flags", NULL
struct Menulten Menulteml6 = { fiMenuIteml7, 0, 44, 161,10,
ITEMTEXT+ITEMENABLED+HIGHCQMP, 0, (APTR)&lTexti5, NULL, NULL,
NULL, OxFFFF struct IntuiText iTexciS = ( 3,1,COMPLEMENT, 1,1/
NULL, "Library Flags", NULL struct Menultem Menulteml5 - {
SmenuIteml6, 0, 33, 161,10, ITEMTEXT+ITEMENA3LED+HIGHCOMP, 0,
(APTR) filText16, NULL, NULL, NULL, OxFFFF struct IntuiText
Itext17 = { 3,1,COMPLEMENT, 1/1, NULL, "Linker Flags", NULL
struct Menultem Menulteml4 = ( fiMenulcerolS, 0,22, 161,10,
ITEMTEXT+ITEMENABLEDtHIGHCGMP, 0, (APTR)£IText17, NULL, NULL,
NULL, OxFFFF ); struct IntuiText ItextlS = {
3. 1,COMPLEMENT, 1/1/ NULL, "Compiler Flags", NULL }; struct
Menultem Menulteml3 = ( &MenuIteml4, 0,11, 161,10,
ITEM7EXT+ITEMENABLED+HIGHCOMP, 0, (APTR)&IText16, NULL, NULL,
NULL, OxFFFF }; struct IntuiText Itextl9 = (
3. 1,COMPLEMENT,
1. 1, NULL, "Editor Flags", NULL }; struct Menultem Menultenl2 =
{ &MenuIteml3, 0,0, 161,10, ITEMTEXT+ITEMEWABLED+HIGHCOM?, 0,
(APTR) fiI7extl9, NULL, NULL, NULL, OxFFFF In¬ struct Menu
Menu2 = ( Skenu3, 81,0, 57,0, MENUENABLED, "Flags",
4MenuItern12 1; struct IntuiText Itext20 = {
3. 1,COMPLEMENT, 1/1/ NULL, "Quit", NULL }; struct Menultem
Menultem22 = { NULL, 0,33, 121,10,
ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOKP, 0, (APTR)fiIText2Q,
NULL, 'Q' / NULL, OxFFFF )?
Struct IntuiText Itext2i = {
3. 1,COMPLEMENT, 1/1/ NULL, NULL ) i struct Menultem Menultem21 ~
{ &MenuItem22, 0,22, 121,10, ITEMTEXT+HIGHCOMP, 0,
(APTR)&I?ext21, NULL, NULL, NULL, OxFFFF }; struct IntuiText
Itext22 = 1
3. 1,COMPLEMENT,
1. 1, NULL, "Use Old", NULL }; struct Menultem Kenultem20 = {
£MenuItem21, 0,11, 121,10,
ITEMTEXT+COMMSEQ+ITEKENABLED+HIGHCOMP, 0, (APTR)&!7ext22,
NULL, 'O' , NULL, OxFFFF J; struct IntuiText Itext23 = (
3. 1,COMPLEMENT,
1. 1, NULL, "Create New", NULL }; struct Menultem Menulreml9 = {
£MenuIten20, 0,0, 121,10,
ITEMTEXT+COMMSEQ+ITEMENABLED+HIGHCOMP, 0, (APTR)&IText23,
NULL, ‘N' , NULL, OxFFFF }; struct Menu Menul = { £Menu2, 0,0,
75. 0, MENUENABLED, "Program", £KenuIteni9 } ; ^define MenuList
Menul struct IntuiText Itext33 = {
3. 0,JAK2, 233,156, NULL, "Run Directory Utility", NULL ); struct
IntuiText !Text32 = { 3, 0, JAM2, 81,186, NULL, fiIText33 };
struct IntuiText Itext31 = {
2. 1,JAM2, 11,1B6, NULL, "Status: ", fiIText32 } ; struct
IntuiText I7ext30 = (
3. 0, JAM2, 232,141, NULL, "Run Application Program", filText31
}; struct IntuiText Itext25 = {
1. 0,JAM2, 78,102, NULL, "MAKE Module", &!Text30 }; struct
IntuiText Itext28 = 1
1. 0, JAM2, 413,62, NULL, "Link Object Module", £IText29 };
struct IntuiText Itext27 = (
1. 0, JAM2,
411. 64, NULL, "Compile Procram", fiIText2B 1 ; struct IntuiText
Itext26 = {
1. 0,JAM2, 77,84, NULL, "Edit Program", £!Text27 ); struct
IntuiText Itext25 = {
1. 0, JAM2,
77. 64, NULL, 90 Days to the LARGEST AMIGA Publication ever!
AC GUIDEJ&MIGA AC's Guide to the Commodore Amiga is the only complete source for Amiga product information. AC's Guide is your only complete record of categorized and cross referenced commercial software, hardware, and freely redistributable software. AC's Guide is an Amiga reference which should be alongside every Amiga user's favorite computer. Each product is listed with a brief yet thorough description of the product's features and uses.
AC's Guide to the Commodore Amiga is available by only reservation or through your Amazing Dealer! This guide is not a part of the regular Amiga subscription. Don't risk missing this valuable AMIGA reference—reserve your AC Guide today!
P — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — ^ Reserve your copy & save [dataz/press_magazine/Amazing_Computing/HTML_TXT/Amazing_Computing_Vol_04_06_1989_Jun.htm].00 off the .95 cover price!
Yes! Please enter my AC Guide reservation today!
? Fall '89 ,95 (save [dataz/press_magazine/Amazing_Computing/HTML_TXT/Amazing_Computing_Vol_04_06_1989_Jun.htm].00) ? Fall 89 & Winter '90 .95 (save ,95) n 12 issues of AC plus Fall 89 & Winter '90 Guides for .00 (save -95) US subscriptions only. Foreign prices on request!
Name.
Street City_ ST_Zip_ Amount Enclosed.
? Visa ? MC # Signature_ S 20.00 minimum on all credit card orders.
All funds must be in U.S. currency drawn on a US bank. Please allow four to six weeks for processing.
"Edit, Compile# Link and Execute" iIText2S In¬ struct IntuiText Itext24 - | 1, 2, JAM2, 184# 31, NULL, ” C Development System Options ", &IText25 } ; #define iTextList Itext24 struct NewWindow NewWindowStructure = { Or I# 640,198, 0,1, GADGETDOWN+NENUPICK+CLOSEWINDQW, WINDOWS I ZING+WINDOKDRAG+WlNDOWDEPTH+WINDCWCLOSE+SUPER_BITMA?+ACTIVATE, s full_process_gadget, NULL,
* Compile - A Development Environment - c!989 CWR Systems", NULL,
NULL, 5,5, 640,200, WBENCHSCREEN ); Listing Two COMPILE.c
iinclude "compile.h" { main (J main () { int ii,;;; char
ccl,cc2; header_ptr=0; edit_load=Q; OpenAll{); Window^(struct
Window *) OpenWindow(&NewWindowStructure); rastport =
Window->RPort; PrintlText (rastport,SITextList,0,0);
SetMenuStrip(Window, &KenuList); ii=load_env("compile"); if
(ii==Q) environment(); } dir_setup();
strptr2-strptrl«getenv("INCLUDE"); strptr2-;
strcov(include_paths[0],""); 1=1; while (scrptr2!=HULL) {
strcpy (include_paths[i J,strptr2+l);
strptr3=find(include_paths[i),'!', 1); if (strptr3!*NULL)
strptr3cstrptr3-include_paths{i]; if (strptr3!-NULL)
include_j>aths[i]istrptr3)=0; strcat (include paths[i],"/");
strcpy (temp,Tnclude_paths[i]) ; shift_case (temp); strcpy
(include_paths[i], temp) ; strptr2=find(strptrl, ' I', i);
include_path_count=i; ReplyNsg(message); } if (message
class==MENUPICK) { prccess_menus () ; } i f
(message_classa“GADGETDOKN) { process_gadgets <); ) if
(nessage_class-=CLOS£WINDOW) { CloseAll () ; Exit (0); } /
OpenAll0 OpenAll0 /* Opens the necessary Libraries */ i
IntuitionBase = (struct IntuitionBase ’)
OpenLibrary("intuition.library", INTUIT~ON_REV); if
(IntuitionBase^NULL) exit(FALSE); GfxBase = (struct GfxBase *)
OpenLibrary ("graphics.library", GRA?HICS_REV); if
(GfxBase==NULL) r I CloseLibrary(Intuition3ase) ; exit(FALSE) ;
} CloseAll () CloseAll() 1 char dirname(50]; copy src
from_ram(); copy exe from_ram(); dir_get(G); ~ dir_cieanup();
dir”dose O; CloseWindow(Window); CloseLibrary(IntuitionBase);
CloseLibrary(GfxBase); ) I init pointers I) init_pointers{) int
i for £i=0;i<l0;i++) argp;i)=args[i]; ) / processjtenus ()
program_name[0)=0; print_message ("Startup OK"); while (1) Wait
(l«Window*‘>UserPort->inp_SigBit) ; while ( (message** (struct
intuiMessage *) GetMsg(Window->UserPort)) !=NULL) (
nessage_cIassBmessage->Class;
message_address=message->lAddress; message_code=message->Code;
process_jnenus() I int kk,figs; USHORT menu_number,lcem_number;
char holddir[50j; menu_nurr.ber= (USHORT) MENUNUM
(message_code) ; icem_mimber=(USHORT)ITEKNUM(message_code);
switch (luenu nuitiber) 1 case 0i if (progranwiame [0] ! “0) [
save_env(programname); } switch (item_number) { case 0i
copy_sre_fron_ram{) ; copy_exe”fron_ram£) ; 9et_fiie_name
("Input name of new Program"); rtncd=load_env("compile") j /*
load the default environment */ if (rtncd°-0) {
defaulc_environment(); I break; case 1: copy_src_from_ram();
copy_exe_frcn ram(); get file name (“Select File Name to
Load"); strcpy (holddir,def_dir); /* Hold the directory
selected by the user •/ rtncd-load env(program_name); /*
load”the environment for this pgm */ if (rtncd°»0)
rtncd=*load_env (“compile") ; /* if not found, use defaults */
if £rcncd==0} default environment 0; strcpy (def_dir,holddlr);
print__message ("starting copy to ram");
copy_to_ram(program_nane)?
Figs“PARSEINCLUDES.Flags £ CHECKED; if (flgs!*Q) check_for_headers 0; print_nessage ("OK..Program and headers loaded to VDQ:"); break; case 2: break; case 3: CloseAll(); exit (0); break; ) Sections of a Sections of a typical Amiga print print using FinePrint (shown actual size) (shown actual size) FinePrint brings out the detail case 1: switch (item number) I case 0; input_option_data (edit_flags, "Edit Flags"); break; case 1; input_option_data (compile flags,"Compile Flags"); break;
P. O. Box 419 Owego, NY 13827 input_option_data (link^flags,"Link
Flags"); break; case 3: input_option_data (link libs,"Link
Libraries"); break; case 4: input_o?tion_data
(runtime_flags,"Runtime Flags"); break; case 5: input_option
data lobj to link,"Other object files to link"); break; case
6: ir.put_option_data (file to make, "Name of File to MAKE");
break; break; case 2; switch (item_number) { case 0:
input_option_data (edit_program_nar.e, "Edit Program Name");
break; case 1: input_cption_data (ccmpile_command,"Compile
Command"); break; case 2: input_option_data (link_command,
"Link Command"}; break; case 3: input_option_data
(object_location,"Object File Location"); break; case 4 :
input option_data (directory_utility_name,"Directory Utility
Name"); break; case 5: break; case 6: print_message("Saving
Defaults"); save_env("compile"); printjr.essage ("Ok"); break;
) break; ) / input_option_data () input_option_data
(var_ptr,message) char *var_ptr, "message; { char title[40];
strcpy (title,"Input "); strcat (title,message); strcpy
(RequesterWindowStructure.Title, title) ; rtncd-get string
(var otr); if (rtncd==l) ( strcpy (temp,message); strcat
(temp," Set as: "); strcat (temp,var^ptr); print
messaae(temp); ) i f process_gadgets{) ........
process_gadoets 0 , exit_flag=0; if (message_address==(APTR)
edit 0 ; &edit_gadget) if (message address--(APTR) {
4object_gadget) compile(); (continued) /¦ Ar.y non-jero return
code from compile or link */ /* will keep you in this loop if
(edit__laad—1) DisplayBeep(0); /* If any errors existing, beep
screen •/ edit 0 ; if (rtncd1=0) { exit flag*1: } else ( edit
ioad=l; compile () ; if (rtncd=«Q) { if (message_address=“
(APTR} &make gadget) link0 ; if (rtncd—0) exit_f lag*»l;
edit_load“0; run<); .
} if (rtncd—0) t edit_load=0; ) else I edit load“l; DisplayBeep(0); print message , „,, (*There were compile errors. Edit Program to review. ), } i make(); if (rtncd—0) { edit load“C; 1 else I edit load=l; DisplayBeep(0); orint message „., ("There were make errors. Edit Program to review, ), ) Edit the program (conditionally toad error /* If Aborted editor, get out of loop /* Lets have a go at a compile '/ If compiled OK, lets try a link */ If all is well, run the sucker * if (messag€!_addres3“* (APTR) &link_gadget) link (J; if (rtncd—0} { edit_load=0; 1 else f edit load=l; DisplayBeep(0);
print message , (“There were link errors. Edit Program to review. ); 1 } if (message_address—(APTR) &run_gadget) run {)7 if (message^ddiess—= IA?TRI sdebug_gadgec) debug()i if (0ies3age_addre3s— (APTR) tdireetory_ui:ility_gaclgec) directory_utility() ; if <message_address— (APTR) ifull_process_gadget} full_process(); directory utilityO directory_utility() struct Lock "cdir,*old_dir; cdir=Lock("sys;'/ACCESS READ); /• Changes to C; directory to execute the "/ J* directory utility to accommodate some */ /* of the quirky PD programs that must be */ /*• in a pre-defined location */ if (cdirI=Ql (
old_dir-CurrentDir(cdir); /* retain the current directory so we can get back */ lnit_pointers{); strcpy (args[0],directory_utility_name)j argp(13 *0; new_task (" cli Directory utility *,1); CurrentDir(old_dir); /* return ot the original directory */ Unlock(cdir); edit () edit(} ¦¦ int flgs,flgs2; Init_pointers O ; flgS“MULTISUFFER.Flags £ CHECKED; strcpy (args(01,edit_program_name); strcpy (args[I],' if <flgsl“0 H edit load—0) /• If a multi buffer editor or there is *!
{ 1 .
/* no existing error file strcat (args(1),object_location)7 strcat (args[1j,program_name); } if (edit load—1) strcat- (args[1],w vdO:Error.File') ; a rgp[2 Ja 0; rtncd-new_task (M Editor ”,0); if (flgs==0) ecit load=0; /* If not a multi buffer editor, reset ...ag so r.ex. /¦ Edit will edit program and not the error file if (rtncd—Q) i flgs2“CO?YDlSK.Flags £ CHECKED; if ((flgs2) !H 0} I copy_src_frora ranO; I I compile(} full_process 0 full_process() ( struct FileHandle *opfile; opfile=0pen ("vdO: error. F i le ', MOD Z WFIL E); /* Blow Away any error file */ Close (opfile}; exit_flag°0; edit
load«0; compilo () ( cha r e xe c_naaei 50]; init_poincers 0; strcpy (args[0],compile_command); strcpy (temp,object_location); strcat (tenp,program_name); strcat (temp," *0 “I; strcat (temp,object_location); strcpy (exec_name,program_name); exec_name[strlen(exec_name)-2]=0; strcat (temp, exec_r.ane); strcat (temp,".o ”} ?
Strcat (temp,compile flags); strcpy (args[1},tempi; print_nessage (temp); argp[2]“0; while (exit flag—0) rcncd=new_task (* Compile '',!); The Bit Bucket / make 0
* .
RaakeO t char exec_name[50]; int figs2; init_pointers(); strcpy (args(0),"make"); strcpy (exec_nam.e, program_name); exec__name[strien (exec_name) -2 ] =0; strcpy (args [1 ] fexec_nair.e) ; if (fiie_to_make[0}!-0) strcpy (args 11J, f ile_to_tnake); argp[2]“0; sprintf (mag,"Now MAKING %s",args(1]}; print_message (msg) ; rtncd=new_task(" Make w,13; if (rtncd““0l ( flgs2-COPYDISK.Flags 6 CHECKED; if ( (flgs2) !» 0) ( copy_exe_frcm_ram() ; 3 I pr int_r.essage <" "J; COMPUTER STORE We Want Your Business!!
We Have the Best Prices!!
Oldest Commodore Dealer in the Area!!
2 Locations to Serve You
* Software
* Hardware
* Service
* Information 1294 Washington Street
W. Newton MA 02165 617-964-3080 621 Boston Post Road Sudbury MA
01776 508-443-9731 — riiiiMi J Authorized Dealer / Authorized
Commodore Amiga Dealer and Com¬ modore Service Center link (>
..... char exec_name[503; init^poir.ters O ; link 0 \ char
exec name [50]; int flgs2; init_pointers (); strcpy
<exec_name,prcgram_name); exec_name[strlen(exec_name)"2]“0;
strcpy (args [0],link_command); strcpy (temp,link^flags);
strcat (temp," "); strcat (temp,cbject_locaticn) ; strcat
(temp,exec_nane); strcat (temp," ~); strcat (temp, cb
j_to_lir.k) ; strcat (temp," -0 w>; strcat
(temp,object_lGcation); strcat (tem.p,exec_nam,e) ,* strcat
(temp," ~); strcat (tem.p, link_libs); strcpy (args(1],temp);
print_message (temp}; argp[2]“0; rtncd«new_task(" Link ",1);
if (rtncd«0) { flg32=C0PYDISK.Flags fi CHSCKFD; if ((flgs2) !¦
0) ( copy_exe_from_ram()?
} 3 1 / run () ..... run (} I strcpy (exec_name,prograa_r.ace); exec_nane [strlen (exec_nane) **2] =0; strcpy (temp, ohject_locaticr.J ; if (file_to_make[0]T=0) ( strcat (temp, file_to_m.ake) ; 3 else { strcat (temp,exec name); } strcpy (args[0],temp); strcpy (args [ 1 ], runtitae_f lags); argp(23-0; nev_task (~ Program *,1); 3 debug()
- - *•*’•/ debug <) { char exec_name[50]; init_pointers();
strcpy (exec name,program_name); exec_name[strlen
(exec_.name)-2] - 0; strcpy (args[0J,"sdb"); strcpy (temp,
object_locacion); if (£ile_to_tnake[0] !*>0) i strcat
(temp,file to maxe); 3 “ “ else ( strcat (temp,exec_name)t )
strcat (temp," *}; (continued) strcat (temp, runtine^f lags) ;
strcpy (args [1], tempf; argp[2]-0; new_task (" SD3 ",1|; } i
copy_to_ram I) copyto ram(filename) char * filename; I char
print_name [5Qi, ram_nsie [50], filejLojxpy [50],
prcgline[251), tead)3r_fUe_name [50], "rtnstr, * first, cc;
FILE- "diskfile, "ramfile;” struct IntuiText "ipt; int
ctr,rtn,found,ctr2,kk,figs; char tt[80]; strcpy
(ram^name,object location); strcpy (file_to_ccpy,filename);
ctr*0; firsc=find (file_to_eopy,' , 1); rtnstr=first; while
(rtnstr!=0) t rtnstr=find (f iie_to_copy,' /', ++ctr); I if
(ctr!=i) rtnstr-find (file_to_copy,'/', -ctr); /• Find the
last slash •/ if (first!=NULL) ( strncpy (msg, (char ¦)
(first-7) ,7) ; rtn=stmen?(msg, "INCLUDE", 7) ; if (rtn==G)
rtnstr=first; /* Only strip the include out of path for system
includes"/ J if (rtnstr==NULL) rtnstr«*find(fiie_to_copy,' :',
1); /¦ if no subdir names to strip, then check for disk name
to strip*/ if (rtnstr==NULL) rtnstr=file_to_copy-l; strcat
(ram_name,(char *) (rtnstr+1)); strcpy (print_name, (char
•)(rtnstr+1)); diskfiie=fopen(fiie_to_copy,"r");
ramfile-fopen(ram_name,"r"); /¦ Check to see if file is
already in ram ¦/ if (diskfile!=NULL ifi ramfiie==NULL) £
fclose(diskfile); diskflie=NULL; sprintf (msg,"Copying %s to
vdOfile_to_copy) ; print_nessageImsg); strcpy (msg,(char
•)rtnstr); /* Copy the include file name and terminal
character to buffer •/ cc=‘(rtnstr-1); if (cc— '<') cc='>';
rtnstr-find (msg,cc,l); /¦ Find terminal Character */ if
(rtnstr!«NULLJ I
• rtnstr-NULL; /* Eliminate terminal character */ strcpy (header
file name,msc); /* Copy name ¦/ shift_case(heacTer_fTle_nane);
found=0; for (ctr2=0;ctr2<header ptr;ctr2*+) I rtr.=
srrcmp(header_file_name, heaaer_files [ctr2j) ; if (rtn—0) £
found*!; ) I if (Ifound) I strcpy
(header_files[header_ptr],header_file_name); header_ptr++; ) }
) I 1 I if (diskfile!*NULL) fclose (diskfile); if
<ramfile!=NULL) fclose (ramfile); print_message(" "); ¦ find ()
find(search_str,tgt_char,occur) char "search_str,tgt_char; int
occur; £ int ct,offset; offset=ct=G;
- while (* (search_str-o£fset) ! “NULL ct<occur) ( if (*
<search_str+offset)*»tgt_char) ct + + ; offset++; I offset-; if
(*(search_str+offset)==tgt_char) return (search_str+offset);
else return (NULL); } / diskfile=fopen(file_to_copy, "r") ;
ramfi le^fopen (ram_name, "w") ; while {!feof(diskfile)) £
get^record(progline,diskfile); fprTntf
(ramfile,"%s\n",progline); ) fclose(diskfile); fclose(ramfile);
print_message(“ "); ramfile-fopen(ram_name, "r"); )
flgs=?ARSEINCLrJDES. Flags & CHECKED; if (flgs!-0) £ sprintf
(msg, "Now Checking %s for tinclude ’\ print_name) ;
printmessage(msg); \ while (!feof(ramfile) && flgs!~0) £
get_record(progline,ramfile); strcat (progline,"\n"); ctr++; if
(progline[0]!*NULL) t I* find include directives */ if
(progline[0]i' && progline£ 1)i' && progline£2‘n') { rtr.Str=f
ind(progline,' , 1) ; I* Check for beginning of the include
file name •/ if (rtnstr—NULL) rtnstrsfind(progline,'< 1); if
(rtnstr!“NULL) £ rtnstr*^; check for headersO
check_for_headers() £ FILE *includefile; char filename[50]; int
ii,jj,kk,figs; Struct IntuiText *ipt; i i=0 ; /* If include
path environment variable i3 set with RAD;include as first in
the string, this routine will find the file there if it exists
and will not have to access disk as it is already in RAD: */
while (ii<header_ptr) £ for (kk=Q;kk<include_path_count;kk+ + )
t strcpy (filename,include paths(kk]); strcat
(filename,header_?iles[ii]j; includefile** fopen (filename,
"r") ; if (includeflie!=NULL) { fclose (includefile);
eony_to_ram(filename); kk=99999; } ) if (kk<99999) £ sprintf
(msg, "Unable to fir.d \s", fi ler.ame) ; for
(kk=0;kk<inciude_path_count;kk++) DisplaySeep (NULL);
?rint_message (msg) } dlr_get(1); ii=0; while (ii<=fileptr) t
jj=0; while (jj<header_ptr) t strcpy (filename,"RAD:INCLUDE/");
strcat (filename,header_files[jj]) ; if
(strcmo{filename,dir_files[ii])En0) { strcpy(dir files[ii); 1
jj++; 1 ii++; ) flgs=DELETEINCLUDES.Flags fi CHECKED; if
(figs!=0} dir_cleanup (); ANNOUNCING!!
THE SERIAL SOLUTION Delay (200); a dual-port interna! Serial card for the Amiga 2000
• the only serial board with an Amiga-compatible 25-pin serial
port
• the 25-pin port supplies +-12 volts for specialized Amiga
peripherals
• the second port is a 9-pin A [ -compatible serial port
• supports tt variety ol devices including; printers, modems,
MIDI interfaces, sound samplers, draw ing pads.
VCR controllers, and other serial devices
• works with most existing software (requires small patch)
• compatible with SER: anti "serial.devicc ’
• Full 120-day manufacture's limited warranty ) / get_record()
get record (rec,fileptr) char *rec; FILE “fileptr; unsigned
char cc,ccc[20J; int offset; offset=0; cc=agetc(fileptr); while
<cc!=QxFF £& ccl='\n') I
* (rec+offset) =cc; offset++; cc-agetc(fileptr); \
* (rec+offset)“0; if (CC“”EOF)
* rec='{jumi [dataz/press_magazine/Amazing_Computing/HTML_TXT/Amazing_Computing_Vol_04_06_1989_Jun.htm]}’; J 1 copy_src_fromram() / copy src_from_ran() ( FILE
*checkfile; char
exec_name(50],ram_exec_name(5Q3,obj_name(50],ram_obj_name[50]?
Int figs; i f (program_name[0]!“0) { save_env(program_name); init_pointers(); strcpy (args[0],"copy"); strcpy {args[1],object_location) ; strcat (args (1 j, prcgram_narne); strcpy (args[2],program_name); argp[3]=0; status_msg {procran_narne); ] ) / copy_exe_from_ram() .......a******.*******************........ copyexefromram() I print_nessage(" ") ; FILE “checkfile; char exec_name[50],ram_exec_name[50],obj_name[50],ram_obj_name[50]; int figs; CHECKPOINT TECHNOLOGIES
P. O. Box 2035 • Manassas. Virginia 22110 • 703-330-5353
Distributor Inquiries Welcome Amiga is a trademark of
Commodore'Amiga, Inc. AT is, a trademark of- IBM.
THE SERIAL SOLUTION is a trademark of Checkpoint Technologies.
Strcpy (exec name,program_name); exec_name[strlen(extc_name)-2]=0; strcat (ram_exec_name,exec_name); strcpy (args[0],"copy"); argp [3] =0; checkfile=fopen (rarr._exec name,"r"); if (checkfile!=NULL) { fclose {checkfile); strcpy (args[1],ran_exec_name); strcpy (args[2],exec_name); status nsg(ram_exec_name); !
Strcpy(ram_obj_name,ram_exee_name); strcat {ram_ob j__name, ". O"); strcpy (obj_name, exec_name); strcat (obj~r.ame, ,r.o"); checkfile^fopen(ram_obj_name,"r"); if (checkfile!^NULL) I fclose (checkfile); strcpy (args(l],ram_obj_name); strcpy (args [2], ob j_name); status nsg(ram_obj name); ) strcpy(ran_obj_name,ram_exec_nane); strcat (ram_obj_name,".cbg"); strcpy (obj_name,exec_name); strcat (obj_name,".dbg"); checkfile=fcpen(ram_obj_name,"r"); if (checkfile!=NULL) fclose [checkfile); strcpy (args [ 1 ], ratn_ob j_narael ; strcpy {args{2j,obj_name); status_msg(ram_obj_name); ) if
[program_narr.e [0] !=0) ( init_pointers(I; strcpy (ram_exec_name,object_location); status msg() / (continued) £tatus_msg(name) char "name; { sprintf (msg,"Copying %s to disk",name); print_message (msg); new_task (" Ccpy from RAD: ”,1); ) / new task 0
* **r*..........«" *"***"««******........j
new_task(taskname,newoid) char "taskname; int newoid; { int
ioerror; /* Setup argp and args and call this function */
struct FileHandle "oldcos; struct FileHandle "opfile; struct
IntuiText *ipt; int returncode,mode; if (newold»=l)
mOde**MQDE_NEWFILE; else mode-MODE_OLDFILE; ipta4WaitText3;
ipt->IText=taskname; Second_Window=(struct Window *)
OpenWindow(iWaitWindowStrucrure); Secor.d_rastport =
Second_Window->RPort; get_file_nair.e (message) char
‘‘'message; t char fname[50]; int i; for (i“0;i<5Q,-i++) strcpy
(header_flies[i],"{jumi [dataz/press_magazine/Amazing_Computing/HTML_TXT/Amazing_Computing_Vol_04_06_1989_Jun.htm]}"); header_ptrB0; ir.put__cpticr._d2t a
(program_nare, "Program to Work. On"); If you have C Heath's
File requester code, comment cut the input_option_data function
call above and remove the comments from, around the code below.
Link with the abject for the Requester and the close window safely and all will work fine
* **** ******* ************* /.* * *************** ... **... .*,*
File_Window =(struct Window *)OpenWindow(SFileNewWindow);
Process = (struct Process *)FlndTask(0L); Main Window =
Process->pr WindowPtr; Process->pr_WindowPtr = Window;
get_fname(Window,NULL,message,def program name,def dir);
Process->pr_WindowPtr = Main_ttindow; st rcpy (fnane,de f_dir);
strcat (fname,"/"); strcpy (inciude_paths(0],fname); strcat
(fname, def_j>rogram_name) ; strcpy (program_name,fname);
strcpy (program_name,def_program_name);
* ************* ***********,**„******„******, ****, PrintIText
(Second_rastport,& WaitTextList,0,0); Process=(struct Process
*)FindTask (0); oldcosaProcess->pr_COS; /" retain the output
destination to restore it later "/
opfile«Gpen(~PAC:error.file",mode); if (opfile==C &&
mode==s.M0DE MEWFILE) { printf (“Cannot Open FiieXn");
CloseWindow (SeconcS_Window); CloseAll () ; exit (99); ) if
(opfile-“0) Opfile=0pen("RAD:error.file",MODE_NEWFILE);
Process->pr_COS=oofile; /* Direct the output of the new task tc
the file */ /¦ that we just opened. This will hold all */ /*
error messages so the editor can get 'em */ strcpy
(temp,args[01); strcat (temp," “); strcat (temp, args [ 1 ]) ;
strcat (temp,"\n\r"); if (newold==i) Write
(opfile,temp,strien(temp)); fexecv (args(0],argp);
returncode*wait(); Process->pr_COS=oldcos; Close (opfile) ;
CloseWindow (Seccnd_Window) ; return (returncodej; 1 /
print_message 0
• */ print_aiessage(msgtext) char "msgtext; I struct
IntuiText "ipt; char blank_line[80); ipt=STA7US_LINE;
ipt->IText“blank_line; strcpy (blank_line,* "); blank
linej66]=0; PrintlText (rastport,STATUS_LINE,0,0); strcpy
(blank_line,msgtext); blank_line166]=0; PrintlText
(rastport,STATUS_line,0,0); I / get file name()
* ""** ..... / get_string() get_string(ret_string) char 'ret
string; { strcpy (SIBuffer2, ret_string) ; /• Establishes
Default String "/ Second_Window=(struct Window •)
OpenWindow(iRequesterWindowStructure); Second_rastport =
Second_Window->RPort; if ( Intuiticn3ase->lib_Version > 32 ) (
ActivateGadget(&string_gadget,Second Window,0L); ) exit_flag=0;
while (exit flaa--Q) I Wait
(l«Secor.d_Window->UserPort->mp_Sig3it) ; while (
(message=(struct IntuiMessage *)
GetMsg(Second_Window->User?ort)) !=NULL) {
message_class=message->Class;
message_address=nessage->IAddress; message_code=message->Code;
ReplyMsg(message); J if (message_class~=GADGETDOWN) ( if
(rcessace address==6Requester Gadget3) { exit_flag=2; \ if
(message_address=«&Requester Gadgetl) ( strcpy
(ret_string,SIBuffer2); exit_flag=l; i ] ) CloseWindow
(Second_Window); message__class=0; return (exit_flag);
dir_setup()
* *"* !
Dir_setup() ( /* Initializes Variables needed for directory acquisition */ if ((dir info - AllocMen((long) sizeof(struct Filelnfo3lock),OL)) == NULL) print message ("Unable to allocate Memory for File Info Block!*); Delay (20C); return(NULL); ) if (FirstEntry ¦ (struct dirent *) AllocMen((long)ALLOCSIZE,OL) — NULL) print message{"Unable to allocate Memory for Directory Entry!*); Delay “(20C) ; return(NULL) ; 1 dir_close I) dir close () /* Releases the memory that was allocated to the directory buffers */ if (FirstEntry!-NULL) FreeMem(FirstEntry,(long)ALLOCSIZE ); if (dir_info!“NULL)
FreeMem(dir_info, (long)sizeof(struct FilelnfoBlock)); 1 Attention Amiga Developers and Programmers.
Virtual Reality Laboratories, Inc. is looking for a few excellent new entertainment and educational games for the Amiga. To be accepted, these games must excell in graphics and sound capability. If you have some work that fits this description, send for guidelines to: VRLI, P.O. Box 609, Atwood, CA 92601.
Please don’t submit until you have read the guidelines.
^ JJ dir_get () dir_get (filter_src_obj) int filter_src_obj; /¦ if filter_src_obj is set to 1 then *c and .0 files are not deleted */ char incl 1207; int ctr,length; /• Retrieves the directory contents */ print_message ("Getting RAD: Directory*)?
Fileptr=-l; dirptr^O; ctr=0; for (ctr»0;ctr<100;ctr++) dir_files[ctr][0)“0; for (ctr“Q ?ctr<10;ctr+ + ) dir_dirs(ctr][0]“0; scrcpy (dir_dirs[0],*RAD:INCLUDE*)?
Ctr-Q; while(ctr<=dirptr) ( if (! (pdir=(struct FileLock ¦)Lock(dir_dirs[Ctr],(ULONG)ACCESS_READ)) ) { print_raessage("ERROR!!!! Cannot find RAD:INCLUDE*); DispiayBeep(0); Delay (300); return (99); } rtned=Examine(pdir,dir_info); if (rtncd==0) ( print_message("Unable to find the requested directory entry!"); Delay (300); return (99) ; } rtncd=ExNext(pdir,dir_info); while (rtncd!=0) ( if (dir_info->fib_DirEntryType>0) ( dirptr++; if (dirptr>9) dirptr*9; strcpy (dir_dirs[dirptr],"vdO:INCLUDE/*); strcat (dir”dirs(dirptr),dir info->fib FileName); \ if (di r_in fo-> fib_Di rEnt r y Type< 0) {
strcpy (temp,dir_info->fib_FileName); shift_case(temp); length^strlen(temp); if (!filter src_obj || ! (temptlength-2]' (.(. (tempnength-l]=='Cr II temp[length-l]»*'0'))> I* Do not put C or Object files in list of files to be deleted */ t fileptr++; if (fileptr>99) fileptr“99; strcpy (dir_files[fileptr],dir_dirs(ctr]) ; strcat [dir_files[fileptr], "/*); strcat (dir_files[fileptr],dir_info->fib_FileName); Shift_case(dir files I fileptrJ]; ) } i=ctr; rtncd»ExNe>:t (pdir, dir_infol ; i i ctr++; ] } / dir_cleanup 0 dir_cleanup() 1 int for (ii“0;ii<“fileptr; ii++) if <dir__files[ii] [0J !-Q) [
sprintf (msg,"Deleting %s",dir_filesCi1]); orint message(msg)?
DeleteFile (dir files[ii]); ) 1 / shift_case 0 shift_case(ipstr) char *ipstr?
Int ii,jj; short ccl,cc2; j j=strlen(ipstr); for (ii=0;li<jj;ii++) / ccl=*(ipstr+ii); if (ccl>»97 ccl<-122) \ cc2-(ccl-32) ; L r else ( cc2=cci; )
* (ipstr+ii)*cc2; ) ) load env() load env(fnarae) char "fname?
Char er.vname [80 J, flags [ 80]; file *envfileptr; \ D - Five Associates I ( print_message("Saving Environment Parameters"); fprintf (envfileptr,"%s\n", compile_flags) ; (envfileptr,"%s\n",Iink_libs); (envfileptr,"%s\n",link_flags); (envfileptr, "%s\n", object location) ; (envfileptr,"%s\n",edit_program name); (envfileptr, "%s\n", def_program name) ,- (envfileptr, "%s\n", def ”dir) ; (envfileptr,directory_utility name); (envfileptr,"4s\n", compile_command); (envfileptr,"%s\n",link command); m Authorized Commodore Service Center c= tonmodofB PC-10
(0) ; Tired of the high cost of computer repairs?
(TAT Labor charges "»FREE Estimates I -195
- ?Warranty work Also: 1764 to 512K:,6i^ 128 64K vdc RAM: M0-e
NEW: 01902conversion to RGB-I:*40M int figs; strcpy (envname,
fnaroe) ; strcat (envnane,".env"); envfileptr»fopen(envname, 19
Crosby Drive Bedford, MA 01730-0523
(617) 275-6892 #r") ?
Fprintf fprintf fprintf fprintf fprintf fprintf fprint f fprintf fprintf fprintf (envfileptr,"4s\n",runtime flags); fprintf (envfileptr,"%s\n", ob) to link); figscCO?YDISK.Flags £ CHECKED; fprintf (envfileptr, "%ld\n", figs); flgs=PARSEINCLUDES.Flags i CHECKED; fprintf (envfileptr,"%ld\n", figs); flgs=MULT'BUFFER.Flags £ CHECKED; fprintf (envfileptr,"%ld\n",figs); flgs-DELETEINCLUDES.Flags £ CHECKED; fprintf (envfileptr,"%ld\n",figs); fprintf (envfileptr,"%s\n",file_to_make); fclose (envfileptr); essage £” "); (D; FILE ‘envfileptr; int figs; strcpy (envname,fname); strcat (envname,".env");
envfileptr=fopen(envname,"w"); if (envf ileptr! =IJULL) print_ return ) else i return } ) if (envfileptr!=KULL) { print_message (’‘Loading Environment Parameters"); get_recard (compile_flags,envfileptr) ; cet_record (link_libs, envfileptr) ; get_record (iink_flags,envfileptr); aet_record (object_location,envfileptr); get_rocord (edit_program_name, envf ileptr); qet_record (def_program_name,envfileptr); get_record (def_dir, envf ileptr); get”record (directory_utility_name,envfileptr) ; cet_record (compile_command,envfileptr); g=t_record (iink_co:r.r.anri, envfileptr); cet_record (runtime
flags,envfileptr); get_record (obj_to_Tink,envfileptr) ; get_record (flags,envfileptr); if Istrcmp(flags,"0”)!»0) COPYDISX.Flags-COPYDISK,Flags I CHECKED; } else { CO?YDISK.Flags^COPYDISK.Flags £ -CHECKED; ) get_record (flags,envfileptr) ; if (strcmp (flags,"Q") !=0) PARS EINCLUDE S* F1ag SD?AKSEIUCLUDE 5.Flags I CHECKED; } default_environment() default_environment () 1 print_message("Setting Default Environment''); strcpy (compile flags,*" -3 -S +1 +fi"); strcpy (link_liEs," -lmx32 -lc32M); strcpy (link_flags," strcpy (Ob)ect_location,"RAD:INCLUDE/"); strcpy (edit_progran_n ame,"edit");
strcpy (def_programJnane,program_namel ; strcpy (def_dir,"")f strcpy (directory_utility_name, "directutil"); strcpy (compile_command,"cc"); strcpy (link command,"In"); strcpy [runtime flags," "); strcpy (obj_tc_Tink, " **); strcpy (file_to_make, ""); Listing Four Makefile for COMPILE PARSE INCLUDES . Flag s=?ARS El N'CLUDES, Flags & -CHECKED; get_record (flags,envfileptr); if (strcmp(flags,"G")!=Q) I MULTIBUFFER.Flags=MULTI3UFFER.Flags | CHECKED; 1 else < MULTIBUFFER.Flags“MULTI BUFFER.Flags L -CHECKED; } get_record (flags,envfileptr); if (strcmp{flags,"0")!=0) ( DELETE
INCLUDES.Fiags*DELETEINCLUDES.Flags J CHECKED; eise ( DELETEINCLUDES,Flags=DELETEINCLUDES-Flags £ -CHECKED; ) get_record (file_tc_make,envfileptr) ; fclose (envfileptr) ; crint_r.essage (* “) ; return ll); } else ( return (0); compile: vdO:include/compile.o vdO:include/safeclose.o RAD:include/getflie.c In +Q -G RAC:include/compile.o RAD:include/safeclose.o RAD:include/get file.o RAD:lib/c32.lib copy RAD:include/compile.o compile.o copy RAD:include/compile compile copy RAD:include/compile.dbg compile,dbg del RAD:include/compile del RAD:include/compile.dbg RAD:include/compile.o: compile.c
RAD:include/compile.h cc compile.c -o RAD:include/compile.o -S -3 +1 +fi -n rad:include/safeclose.o: safeclcse.o copy safeclose.o RAD:include/ RAD:include/getfile.o: getfile.o copy getfile.o RADrinclude/ RAD;include/Compile.hi ccmpiie.h copy compile.h RADrinclude/
• AC- ) save env() save_env(fname) char *fname; I char
envname[80]; Amazing Hardware Reviews UPS Units C-Cor Model
SW-300, Cuesta 400 Watt & DRS-350 by Steven L. Bender Please
refer to Pan I of this series (Amazing Computing, Vol 4.4)for
the technical details on Switching vs. Linear Regulated Power
Supplies, technical aspects and details of various types of UPS
units and why they are necessary.
Amiga System Hardware The hardware configuration I used consisted of an A-100Q/512K system, unit widi one external A-1010 floppy disk drive, THE WEDGE hard disk interface, an MFM hard disk controller, a Thomson 4375M UltraScan multiple frequency scanning monitor, and die equivalent load. The three components were plugged into a “one to six” outlet strip plugged into the UPS unit. The external equipment was turned on together using the power switch on each UPS unit.
The Amiga A-1000 system unit /A- lO'lOAVEDGE/DTC controller draws about around 25 Watts/35 VA; the Thomson 4375M UltraScan (adjusted with the brightness at center detent, contrast on maximum) draws 90 Watts/125 VA; and the incandescent bulb is 40 Watts/40 VA. Therefore, the load on each UPS unit tested was around 165 Watts. Since two of die three load devices use switching power supplies, die total power draw of this load is about 200 VA.
General Operating Considerations In terms of the amplitude or voltage of the incoming AC wave, die SPS in die Amiga A-1000 and many other computers is relatively immune to minor variations in line voltage. To test exacdy how immune these devices are from line voltage variations, I operated the A-1000 Amiga/Thomson 4375M combination from an AC Variac (a variable transformer) on both supranormal and subnormal AC line voltages. The most common subnormal form of line voltage is a “brownout", defined as a reduction of AC line voltage, from a nominal 117 volts to the 95 to 105 volts range.
Both the A-1000 and the Thomson UltraScan monitor functioned and operated properly (for several minutes) down to an AC line voltage of 65 volts.
When no floppy drives were engaged, the A- 1000/Thomson 4375M worked properly down to an AC line voltage of about 56 volts. Below 55 volts, die UltraScan screen started to shrink, get waves, and visually distort. Eventually, as die line voltage was decreased, die A- 1000 would hang. The conclusion is that these devices worked properly during brownout conditions as encountered during summertime reductions and below. However, reducing die AC line voltage to the 35 volt range for l/10th of a second would cause the computer to hang. While most UPS units wall not switch the computer over to battery
backup until the AC line drops to about 105 volts, it is reassuring to know that die AC line could momentarily drop to 55 volts without adversely affecting die A-1000's normal operation.
The tests Ten switching UPS units were tested. Each UPS was turned on widiout any load attached, and left to sit and charge for at least 12 hours. Then the in- use timed tests were conducted. An Amiga A-1000 system (as described above) was powered by die UPS.
Kickstart and then Workbench 1.3 was loaded. PerfMon was used as the only' task just to make sure the computer didn’t hang. After all was set up, the UPS line cord was pulled from the wall, causing a power failure and battery backup condition. The stopwatch would be initiated, and the time would then be recorded until die CRT screen went blank and the lamp went out. Each UPS was tested in two in-use timed trials. The better of the two tests was reported in our results section.
THE UPS REVIEWS C-Cor Model SW-300 PowerVision UPS This standby UPS produces a true sine wave output (just like the AC line) under battery backup conditions. In contrast to most units here, this unit, compared to its power ratings, is huge.
The smallest of the C-Cor UPS units is in an all-steel medium-light beige case with numerous vent holes on each side. The case is 12" wide x 6" high x 18" deep (1,296 sq in.) And weighs approximately 45 lbs. The U-shaped chassis has four welded corner beams for reinforcement.
The bottom is supported by two mini “U’s” bearing the bulk of the weight of the batteries and transformer. The bottom case is absolutely rigid, with no tolerance or movement possible in the bottom part. This UPS was designed in the United States and manufactured in Taiwan.
During normal operation, die green LED (AC line ) on die front panel will glow, and a red LED conies on under battery backup conditions. The audible alarm is a discontinuous, rather faint beep. It can be turned off using the front panel switch. The AC line cord on the rear is permanently attached. There are no jacks to connect an external battery.
Under battery backup conditions, die audible alarm beeps every second, even after the unit has depleted its batteries and turned battery backup operations off. When the beep alarm is disabled, the battery output (red) LED still flashes. Unlike most UPS brands tested, the Power Vision's beep rate does not change significantly over time. This makes it difficult to tell whether a power outage has just started, or if the unit has been operating on battery power for half an hour, widi the batteries being almost depleted.
(continued) The unit’s transformer makes a loud “THUM" when the unit is powered up. Also, there is a heavy “CLUNK1’ when the unit (on battery backup) switches back to die AC line. The transformer buzz is audible from over three feet away under normal AC or battery backup conditions. It appears these sounds come from the heavy windings of the transformer bucking against tire steel core as the powerful AC currents interact.
Industrial strength? Very close to it.
Internal, construction was nearly excellent. All wires were neady harnessed and tied together with nylon strips. On the right side, a large, double¬ sided printed circuit board contained all circuitry, including 9 CMOS logic and linear IC’s, an opto-isolator, and about two hundred small transistors, diodes, resistors and capacitors. There are eight, 10 turn pots on the logic board for precisely adjusting some interna! Voltage levels. Most of the other parts have close tolerances (e.g., 2% fixed film resistors used throughout).
There are four (MOV) varistors, diree high-voltage caps, and a ferrite- cored coil in the line-filtering section.
However, these parts are on die main PC board. A better design would have them absorbing energy (e.g., a lightning strike) before that energy reached the main PC Board. Most connections inside this unit use heavy-duty nylon molex connectors.
One exception is the buss connector, which connects the AC high-voltage to the line filtering/protection components on die main PC board.
On the left side, a rather large 12" x 5" x 1" extruding black heat sink is attached to a pair of MJ11032 output devices. These power transistors are in modified TO-3 cases. The rated power dissipation capability (120 volt/50 amperes/300 Watts) of these two Motorola output devices totals 600 watts.
Centrally located and to the rear are the four Gel-Cell batteries, each rated 6 volts/8 Amperes. There are two fuse holders mounted on the rear panel—a BLN-25 ampere battery line fuse (available from industrial lighting distributors), and the more familiar AGC- 4 ampere AC line fuse.
The front mounted transformer is hefty, but is dwarfed by the heavy steel mount that holds the bank of four 8 ampere/6 volt Yuasa Gel-Cells firmly in place. I certainly consider the transformer adequate to the task, but it’s too bad they couldn’t find a “quiet” version, or some way of isolating it from the steel cabinet. As I mentioned, the transformer buzz was always audible when the unit was turned on. However, the temperature inside or on the case did not vary much, remaining at or near room temperature during normal AC operation, under battery backup conditions, and while charging.
The two NEMA-15 grounded outlets in the rear of this UPS unit are parallel. One wire (ihe neutral) is double-insulated at its plug, but at this point touches against one of the three sheet metal braces which holds the main circuit board. Because of the insulation, this is not a danger in any way, but one gathers this was an unintended problem, because the spacious interior generally has one inch "margins” between any other two component parts. There is plenty of room inside this unit; so the NEMA-15R sockets or the main circuit board could have been moved another half inch, to avoid this.
• Cartridge selections undisturbed by Preferences
• Considerable speed-up in many graphic dumps » Enhanced
implementation of control codes
• Multiple graphic dumps on the same page
• Elimination of muddy-lookinggraphics 9 Suppression of
unnecessary page feeds e Ability to change fonts At H'ilL
Super_DJ is available NOW for .00. CREATIVE FOCUS Boj 580
Chenango Bridge, New York 13745-0580 DeskJet and Amiga are
registered trademarks of Hewlett-Packard and Commodore-Amiga
respectively.
It seems the overall unit design,could have been best served if the AC line filtering / protection components had been placed on a separate circuit board near the incoming line cord and fuses, instead of right near the circuits that power tire CMOS ( low voltage ) active circuits. This would have made for a smaller main logic circuit board, which could then have fit along the smaller dimension, This would have allowed the innards to be realigned allowing the longest dimension of the case, to be the “ width When diere is a significant difference in the size of the width / depth dimensions, most
products have the width as the longer dimension. This design topology, is shared by tire Amiga A-2000, most desklop computers, and all the desks I have seen ) The current C- Cor case design requires a 20+ inch depth “ clearance “ from the front panel, in order to plug a NEMA-15P plug into the rear AC outlet. This poses some problems for smaller desks, hutches, and computer cabinets. Most likely, this and the larger PowerVision units will be taking up floor space, but designers make decisions about size and weight.
The constant timing of the audible alarm beeps is perhaps the only fault that could have been easily changed, otherwise it is difficult to fault the PowerVision UPS.
The PowerVision comes with several “ spec sheet" pages of information, but no real manual. While this information may be adequate, it is minimal.
Prota-40k the first fully featured amiga data-acquisition AND process-control board Power Vision operates perfecdy, and it is a true sinewave on battery backup. The unit is large, but conservatively designed, with almost no thermal gradients. In the first trial, the SW-300 UPS backed up the Amiga A- 1000 / Thomson / equivalent load computer system for 37 minutes, 1 second. On the second in-use trial, it backed up the system for 36 minutes, 49 seconds. The sine wave output during battery backup operation wasn’t as pure as that of the SAFE or Emerson units, but it was a reasonable sine wave.
Overall, AmigaGPIB is a General Purpoae interface Bus (IEEE-488) card for the A2000 that features all of the Talker / liatener / Controller functions of the 1EEE-48S standard.
One Amiga can connect and control up to T4 other GPIB instruments or Amigos. C source driver and demos applications included. 5 Lhe unit was well designed, with one or two minor faults.
AroigaFFT A complete package of Fast Fourier Transform Routines and windowing functions. Includes C source.
2 C-Cor Corporation, which originally manufactured these units in Taiwan, sold their entire stock and manufacturing rights to another company: The Power Place, just over one year ago. The Power Place upgraded the unit’s power ratings , from 300 VA to 375 VA. They continue to sell all diree sizes of the PowerVision units covered by their own 1 year limited warranty, The Power Place will also honor C-Cor’s original 3 year limited warranty. Our sample had an early 1987 date code, but had just had new batteries installed prior to our in-use tests. List Price: $ 499.00 Unit is available
discounted.
Ue also carry Mitsubishi and Shinko Color Printers I Driver* ACDA HARDWARE AND SOFTWARE DEMO DISK Proto-40k, Proto-5k, AmigaGPIB, AmigjView, DigiScope, and AmigaFFT are registered trademarks of ACDA Corporation. ACDA is frequently updating it* product* and reserve* to right to change specifications and price* at any time without notice.
(C) Copyright 1989 ACDA Corp. Summary C-Cor SW-300 PowerVision
Sinewave UPS Positive attributes: Sine Wave output,
conservative, efficient low- temperature design, use of an
all-steel case, low price. One of the longest backup times of
all UPS units tested.
Negative attributes: Large physical size and weight, lack of a significant delay upon return to the AC line, no jacks for external battery, constant timing on the audible alarm beep.
Cuesta 400 Watt (#40012060) DATASAVERUPS The dark beige case give die impression of quality and caring in workmanship. The Cuesta 400 is one of the most compact UPS units tested here, The all-steel outer case, is 13" x 13" and only 2 1/2" high, about half the height of several of the other UPS units. This rather diminutive unit carries, which is made in tire U.S.A., has a 400 watt rating, quite a powerful capability for its size.
In normal operation, both of the front panel LED indicators glow. One glows green, indicating normal AC line operation, tire other one glows yellow, when there is power at tire rear outlets.
Under battery backup conditions, the green LED turns red, and flashes. Each time the red LED flashes, the audible alarm beeps.
There is no external switch to turn the beep alarm off, but the buzzer can be disabled by inserting a jumper internally. The unit beeps every five seconds when the batteries are fully charged. That beep rate decreases to once every second after about 10 minutes of battery backup under the load of tire Amiga hardware. At some point, the unit just reaches a predetermined point of battery depletion, and the AC Power LED goes off. If tire AC line is still USE,fiDt 12-bi t ACC channel* 40CMi mox throughput 2 Procromable Gain (PC) options js 2 12*&it rultiplying DAC outputs I 3 16-blt prograiroiabla
timers 132 TTL coopatibl> Digits! 10 bits) I Osts-Acqutcition-System Software
* C demos for til fincttons Digital Dynamic*' SNIP compatible
95 / 95 with PG AmigaView 2.0 finally, a standardised
OBJECT-ORIENTED INTUITION C interface that includes all GADGET
types (with automatic nutual exclusion), WINDOWS, MENUS,
REQUESTERS, Coeplex xultiple window EVENTS, SCREENS. LAYERS,
BITMAPS, All IMAGE TYPES, LOW LEVEL GRAPHICS, and IFF. Manx and
Lattice compatible libraries.
Over 100 routines and macros.
Extensive doc and large example directory. Reduces progr oft code t i ze significantly. AnigaWorld's C programming library of choice (Sept/Oct 1987, p28).
.95 DigiScope DigiScope is a digital storage oscilloscope emulator that works with all of our data-acquit!tion product* and all paralLet-port digitizers. It operates 16 independent user-defined buffers, has extensive DSP ond graphic* capabilities and a complete spectral analysis package, DigiScope is completely Amiga:ized and will keep the competition at a distance for some time.
9.95 Introductory Price j ACDA Corporation i 220 Belle Meade Ave Setauket, Nr 11733
(516) 669-7722 out, the Cuesta just goes to sleep, and the
computer goes off. After tire AC line returns, the LED (
now- green ) flashes for a while, telling you lire battery
was depleted and is now charging.
Internal construction was excellent, using a double sided PC Board for the CMOS logic circuitry. There were nine IC’s (mostly CMOS) two opto-isolators, many small transistors, two TO-220 plastic power transistors, one regulator. A high quality torroidai transformer is cenU'ally mounted in this neatly laid out package. The transformer buzz was inaudible, but the transformer wasn’t screwed in tightly. The all-steel case consists of a bottom and top units, which electro-magnetically shields the torroid, but causes it to vibrate very slightly.
Construction is definitely: heavy duty.
Two stud type power transistors are present, and they are visible from the rear, being mounted on a large extruded black heat sink, which is thermally linked to the inner case. Those output transistors stayed fairly cool to the touch.
In fact, the entire unit stayed quite cool, during normal AC operation, battery backup, and battery charging conditions.
There are three NEMA-15 grounded outlets in the rear this UPS unit; three for UPS power, and ne for line only (it goes dead on battery backup ). There are no external fuses, and one internal 30 Ampere battery fuse . Two hidden jacks connect an external 24 Volt battery to the unit. An internal jack can be wired for an external alarm signal. The available AC power, is limited by a 5 Ampere AC line input circuit breaker on the rear panel, and the AC line cord is permanently attached. The Cuesta 400 unit has two MOV's and a high speed Transorb surge suppresser, I found found little evidence of
capacitors, coils or resistors that I could attribute to its line filtering capabilities. Perhaps part of the torroid is used in this manner. All the other UPS units tested here have some obvious line filtering capabilities inside.
The 12 page manual that came with the 400 watt Datasaver was comprehensive, including graphs, charts, schematic and more technical data than most people would need or want. There was also one page Quick Reference Card.
The Cuesta 400 UPS backed up the expanded Amiga A-1000 / Thomson I equivalent expanded computer system, for 27 minutes, 6 seconds.
This unit deserves kudos for its very compact size, and well thought out thermal design. List Price: S 695.00 Unit is available discounted.
Summary CUESTA 400 Watt (#40012060) DATASAVER UPS Positive attributes: Small , with low- temperature design, all steel case, external battery jacks, UR certified.
Negative attributes: High list price, lack of significant line noise filtering, less backup time capabilities than several other UPS units, no alarm turn-off switch, lack of a delay upon return to the AC Line.
DRS POWER SYSTEMS DRS-350 The DRS-350 has a 350 Wan rating, and 600 Watt, and 1KW versions are also available. The DRS-350 is designed and made in the U.S. The case is heavy gauge aluminum measuring 9" wide x
6. 5" high x 16-5" deep; the unit is unusually deep. The front
panel is small, but it contains a rather large assortment of
LED indicators. On the left is the “ LOAD CENTER “ display.
This is made up of two columns of LEDs indicating both banery
condition, and the AC load connected to the unit.
The power switch is located on the lower right hand side of the front panel. Two separate LEDs located above the power switch indicate drat the UPS is eidter in “ normal “ or “ standby “ condition. When AC power is present, the banery display shows a single LED lit for 11 battery " level, and if a load is connected, the load display also shows a single LED lit for the “ load 11 level. Upon going to battery backup, each column of ten LEDs turns into a bar graph meter display for battery capacity, and AC load level.
The rear panel has four NEMA-15 AC oudets, two fuses (not labeled ), and a CEE-22 grounded power cord receptacle. The fuse on the left is in series widi die AC line; the more centrally located fuse appears to be in series with the four rear mounted AC oudets. When you turn the unit on, the multicolored banery meter display comes to life. The unit normally stays in battery backup condition for a second or so, then goes to normal condition. The DRS- 350 is designed so it will not cold boot and output battery power if AC power is absent at turn-on. Under diat condition, the indicators on die
battery meter all light, but none of die load meter LEDs light. Also, there is no hum from the transformer to indicate either battery charging or battery / inverter operation.
An audible alarm sounds under backup conditions, but it is quite faint.
The audible alarm initially beeps every 4 seconds after AC power is lost, and there is no switch to disable it. This beep becomes a continuous whine when die uppermost six or seven of die battery meter LEDs are extinguished ( as the battery is depleted).
At that point the orange LED is still lit and the backup time is running out. A battery depletion circuit protects the batteries,by engaging a UPS shut-down when the batteries reach a predetermined low voltage. On both samples tested, three of die battery meter LEDs remained lit, ( bodi red LEDs and die yellow LED were lit ) when the unit shut down. The documentadon states that the UPS should last until the last red battery meter LED is lit before battery depletion shutdowm. This is a minor discrepancy, which might be affected by die size of the load present on the UPS.
Inside, the power transformer is not that large compared to the single battery, but it does seem adequate to the task. The power transformer has a smaller core than any other UPS unit tested, except the Meirick UPS. Like the noisy transformer in die Meirick unit, the DRS-350 exhibited a significant amount of audible hum, noise and vibration during normal operation. This noise level became even louder when the unit switched to battery backup. It w'as quite difficult to hear the audible alarm on the DRS unit, over the transfonner hum.
The four NEMA-15 oudets are not direcdy connected to a surge protecting parts, but 3 MOV's are present on the main PC board. There is a single stage input RFI/EMI line filter on the AC line cord socket. The spike/surge protection should be good in this unit, inside, the unit has sort of an empty look—diey could have re-engineered it and knocked of about two inches on the depth.
The unit is well made, widi circuitry' on two high quality PC Boards.
The unit uses 6 IC’s, including 3 on the main PC board and 3 for die LED drivers.
I noted no opto-isolators. The main output devices are four plastic (TIP-35C ) power transistors mounted on a rather substantial aluminum heat sink thermally linked to die main body ( U section ) of the outer case. This heatsink covers and encases the gel cell battery. The rated power (100 volts / 25 Ampere / 200 Watt ) capabilities of the four Motorola output devices totals: 800 Watts.
It was dierefore, somewhat disappointing, diat our first sample of the DRS-350 had a significant defect in its LED display. This didn't show' up the first time it was turned on, but it did show up die second time. On normal AC operation, this sample also gave off a slight burning smell, and seemed lo make too much internal noise. The unit w'as not used for our in-use tests.
I got a second DRS-350 and tested it. This unit had a different defect; it always indicated it was in “ battery “ operation, with the red LED lit. In addition, the displays were always in bar graph mode, even when it was running on AC power. This defect occurred from the first time it was turned on. The Amazing JL JL COMPUTINGX7 PANDING REF ?EX flrpzings Computing Amazing \ Computing listr Group I* . .
M* M Sisiff 'ill VOLUME 1-6 VOLUME 1.3 flmazingai Computing VOLUME 2.3 jpf i if ^ M/6* i- ll VOLUME 2.9 BBBBB VOLUME 26 VOLUME 3 4 COMPUTING Expanding Reference Expanding reference is not just an empty promise. The pages of Amazing Computing™ are filled with articles on technical operations and procedures, basic use, and just-plain-fun. The growing library of Amazing Computing's Back Issues contains articles ranging from building your own IBM Disk controller, to setting up your own startup sequence. Amazing Computing™ has repeat¬ edly been the first magazine to offer the Amiga users solid, in
depth reviews and hands on articles for their machines.
From the Beginning Since February 1986, .Amazing Computing™ has been providing users with complete information for their Amigas. This store house of programs and information is still available through our back issues, From the Premiere issue to the present, there are insights into the Amiga any user will find useful. AC was the first magazine to document CLI, tell its readers how to connect a 5 1/4 IBM drive, describe a 1 meg upgrade hardware project for the A1G00, and many more. Please read die list of topics AC has covered below to find die information you have been missing.
Back Issues are .00 US, .00 Canada and Mexico, .00 Foreign Surface All payments must be made by check or money order in U.S. funds drawn on a U.S. Bank.
Limited Supply Unfortunately, nothing lasts forever, and die availability of some of our Back Issues is definitely limited. Complete your Amazing Computing™ library today, while diese issues are still available, by completing the order form in die back of this issue.
Volume 1 Number 1 Premiere 1986 Super Spheres 8/ KeCy Kauffman An Abas'c Graphs prog.
Date Virus By J Foust A disease may attack your Amiga!
EZ-Term by Kelly Kauffman An Abasie Terminal program Miga Mania by P. Kwoks witz Programming fixes & moose care Inside CLI by G. Mu$$er a guided insight into the AmigaDos ™ CU Summary byG. MusserJr. A 1st of CU commands AmigaForum by B. Lubkin Visit CompuServe's Amiga SlG Commodore Amiga Development Program try D. fidts Arra'ga Products A 5sting ot present and expected proCues Volume 1 Number 2 March 1986 Electronic Arts Comes Through A review of software from EA Inside CU: pan two G. Musser Investigates Oil 8 ED A Summary ot ED Commands Lire! By Rtoft Miner A review of the Beta verson of
Live!
Online and the CTS Fat* ta 2424 ADH Modem by J. Foust Superterm V 1.0 By K. Kauffman A term. Prog, in Amiga Basic A Workbench "More" Program by RickWirch Amiga BBS numbers Volume 1 Number 3 April 1986 Analyze I a review by Ernest Viverios Reviews of Racier, Bara lac cas and Mindshadow Forth! The first of our on-going tutorial Deluxe Drawl! By R. Witch An Amiga Basic art program Amiga Basic, A beginners tutorial Inside CU: part 3 by George Musset George gives us PIPE Volume 1 Number 4 May 1986 Sky Fox and Articfox Reviewed Build your own 51/4 Drive Connector By Erne si Viveiros Amiga Basic Tips
by Rich Witch Scrimpef Part One byP.Krvctowtx prog bprint Amga screen Microsoft CD ROM Conference by Jen Okeans Amiga BBS Numbers Volume 1 Numbers 1986 The HSI lo RGB Conversion Tool by S. Pietrowicz Color manipulation in BASIC AmigaNotes by R-tok Rae The first of the Amiga music cofimns Sidecar A First Look by John Foust A first 'under she hood' John Foust Talks with R. J. Mlcai at COMDEX™ How does Sidecar affect the Transformer an interview with Douglas Wyman of Simi e The Commodore Layoffs by J. Foust A look Commodore 'cuts* Scrfmper Part Two by Feny Kivotowitz Marauder reviewed try Rek
Wrch Building Tools by Daniel Kary Volume 1 Numbers 1986 Temple of Apshai Trlology reviewd by Stephen Pietrowicz The Haltey Project: A Mission reviewed by S Pietrowicz Flow: reviewed by Enr Boto Teitcraft Plus • First Look by Joe Lowery How to start your own Amiga User Group by Wlav Smpson Amiga User Groups Mailing Ust by Kelly Kauffman a basic mail list program Pointer Image Editor by Stephen Pietrowicz Scrim per: part three by Perry Krvoiowitz Fun With the Amiga Disk Controller by Thom Storting Optimize Your Amiga Basic Programs for Speed by Pietrowicz Volume 1 Number 71986 Aegis Draw: CAD
comes to the Amiga by Ketfy Adams Try 30 by Jim Meadows an intraduction to 3D graphics Aegis Images/ Animator: a review by Erv Bobo Deluxe Video Construction Set reviewed by Joe Lowery Window requesters in Amiga Bask by Stevg Michol ROT byftoinFrencSiaSDgraphksftStof 1C What I Think" Ren Petersen win a lew C graohe frogs Your Menu Sir! By B Cattey program Amiga Basic menues IFF Brush to Am gaBasic 'BOB’ Basic editor by M Swinger Linking C Programs with Assembler Routines-.By Gerald Hull Volume 1 Number 81986 Tha Unversity Amiga By G.Gamble Amiga at WashngW Stale MieroEd a look at a ere man
army lathe Amiga MlcroEd, The Lewis and Clark Expedition reviewed Fnzeite Scribble Version 2.0 a review Computers In the Classroom by Robert Frizetlo Two for Study by Frueile Daccvery & TheTalkmg Coloring Book True Basic reviewed by Brad Grier Using your printer with the Amiga Matte Madness reviewed by Stephen Pietrowicz Using Fonts from Ami gaBasic by Tim Jones Screen SaVer by P. Krvoiowrtz A mentor protection prog, in C Lattice MAKE Udiity renewed by Scot! P. Evemdcn A Tale of Three EMACS by Steve Poling .txnip File Reader In Amiga Basic by T Jones Volume 1 Number 91986 Instant Music
Reviewed by Stevs Pietrowicz Mlndwatfcer Reviewed by Richard Knepper The Ajegra Memory Board Reviewed by Rich Wirch TxEd Reviewed by Jan and Clift Kent Amazing Directory A guide to the saxces and resources Amiga Developers A Isting of Suppliers and Developers Public Domain Catalog A Lstng cl Amicus and Fred Fish POS Dos 2 Dos review R. Knepper Transfer files from PC/MS-DOS Maid Plan review by Richard Knepper The Amiga Spreadsheet Gizmoz by reviewed by Poler Wayner Amiga extras!
Tlie Loan Information Program by Brian CaiSey basic prog, tc la your financial options Starting Your Own Amiga Related Business by W. Simpson Keep Track of Your Business Usage for Taxes by J.Ktxrmer TheAbsoft Amiga Fortran Compfler reviewed by R A Reate Using Fouls from AmigaBaslc. Part Two by Tim Jones 66000 Macros on the Amiga by G. Hu J Advance your ability.
TDI Modla-2 Amiga Compiler review by S Faiwiszo Volume 2 Number 11987 What Digi-Vtew ls_ Or, What Genlock Should Be! By J. Foust AmigaBaslc Default Colors by Bryan Cadsy AmjgaBasic Titles by Bryan CaUey A Public Domain Modula-2 System reviewed by Warren Block One Drive Compile by Douglas LoveS Lattice C with one drive A Megabyte Without Megabuefcf by Chris Irving An Internal Megabyte upgrade Digi*Vtew reviewed by Ed Jakobet Defender of the Crown reviewed by Keith Contort Leader Board reviewed by Chuck Raudcrn fioundhitl Computer System's PANEL reviewed by Ray Lance Dlgl-Palnt—by New Tck
previewed by John Foust Deluxe Paint Q —from Electronic Arts previewed by J. Foust Volume 2 Number 21987 The Modem by Josph L Rodman efforts cf a BBS Sysop MaeroModem reviewed by Stephen R. Petrowcz GEMNI or it takes two to Tango" by Jm Meadows Gaming between machines BBS-PC! Reviewed by Stephen R, Pietrowicz The Trouble with Xmodem by Jsseph L Rothman The ACQ Project-Graphic Teleconferencing on the Amiga by S. R. Pietrowicz Flight Simulator IL-ACros Country Tutorial by John Rafferty A Disk Librarian In AmigaBASIC by John Kennan Creating and Using Amiga Workbench Icons by C. Hansel AmigaDOS
version U by Clifford Kent The Amazing MIDI Interlace build your own by Rchard Rae AmigaDOS Operating System Calls and Disk Fife Management by D.Hayrve Working with the Workbench by Louis A Mamakcs Prog in C Volume 2 Number 3 The Amiga 2000™ by J Foust A First look at the new. High end Arroga1- The Amiga 500™ by John Farsi A lock ai me new. Tow priced Amiga An Analysis of tha New Amiga Pcs by J. Foust Speculation on the New Amigas Gemini Part II by Jm Meadows The concbdng article on two-player games Subscripts and Superscripts in AmigaBASIC by tvan C. Smrth Tha Winter Consumer Electronics Show
by John Foust AmjgaTrix by W. Block Amiga"1 shortcuts Intuition Gadgets by Harr.et MaybeckToily A journey through gadgetJand, using C Shanghai reviewed by Keith M. Conforia Chessmaster 2000 & Chessmate reviewedby Edwin V. Ape!. Jr.
Zing! From Meridian Software reviewed by Ed Beroovitz Forth! By Jon Bryan Get stereo sound into your Forth programs, Assembly Language on the Amiga™ by Chris Martin Roomers by theBahdtto Genkcks are finally shipping, J,MQREr!l AmigaNotes by R. Rae Hum Busters... *Ko stereo? Y not?... The AMICUS Network by J. Foust CES, user group issues and Amiga Expo' Volume 2 Number 4 1987 Amazing Interviews Jim Sachs by S. Hill Amiga Artist The Mouse That Gof Restored by Jerry Hul and Bob Rhode Sluething Public Domain Disks with CU by John Foust Highlights: the San Francisco Commodore Show by S Hull Speaker
Sessions: San Frandsco Commodore Show H Toay Household Inventory System in AmigaBASIC™ by B Cafidy Secrets of Screen Dumps by Nation Ofcun Using Function Keys with MicroEmacs by Greg Dagias Amigatrix It by Wanen Bock More Amiga shcrtorts Basic Gadgets by Brian Cattey Create gadget factions Gridiron reviewed by K. Contort Real football fa the Amiga Star Fleet I Version 21 reviewed by J. Tracy Amigain Space The TIC reviewed by J. Foist Battery powered Clock Calendar Metascope review byH.TotyAneasy-to-use debugger Volume 2 Number 5 1987 The Perfect Sound Digitizer review by R. Battle The Future
Sound Digitizer by W. Block Applied Vision's SD Forth! By J. Bryanconparing Jforth and Mutt-Fcrth.
Basic Input by B. Cattey AmigaBASIC input rcutne fa use to ail your programs.
Volume 2 Number 5 1987 continued Writing a SoundScape Module in Cby T. Fay Programming wth MIDI, Amiga and SaindScape by SoundScape author.
Programming In 68000 Assembly Language by C. Martin Continuing with Counters i Addressing Modes Using FulureSound with AmigaBASIC by J. Meadows AmigaBASC Programmingutikty wth real, dptzed STEREO AmigaNotes Rch Rae reviews SoundScape Sound Sample.
More AmigaNotes by fl. Rae A fi/Tiertook a: Perfect Sound.
Waveform Workshop in AmigaBASIC by J. Shields e<St & save waveform tor use in other AmigaBASIC programs.
The Mimetics Pro MIDI Studio by Sullivan, Jeffery A review of Mznetcs' muse eddon player.
Intuition Gadgets Part II try H. MaybeckToily Boolean gadgets provide the user win an ovoff user interface.
Volume 2 Number 6 1987 Forth! By J. Bryan Access resources in the ROM Kernal.
The Amazing Computing Hard Disk Review by J. Foust A S. Leemcn tn-depfh looks at the C Ld. Hard Drive, MicroPctics' MA$-Dnve20. Byte by Byte's PAL Jr.. Supra's 4x4 Hard Drive and Xebec's 972QH Ha-to Drive. Also, a took at ask driver software curerfly under devtopmen*.
Modula-2 AmigaDOS™ Utilities ty S. Farwiszewsk A Calls to AmigaDOS and the ROM ternaf.
Amiga Expansion Peripheral by J. Foust Explanation of Amiga expansion peripherals.
Amiga Technical Support by J. Foust How and where to get Am iga lech support Goodbye Los Gatos by J. Foust Closing Los Gatos.
The Amicus Network by J. Foust West Coast Computer Fare.
Metacomco Shell and Toolkit by J. Foust A review The Magic Sac by J. Foust R un Mac programs on your Am ga What You Should Know Before Choosing an Amiga 1000 Expansion Device by S. Grant 7 Assemblers for the Amiga by G. Hud Choose your assembler Shakeup Replaces Top Management at Commodore by S. Hull Peter J, BacWby S. Hull Manager at CAM gives an msids lock Logistix A review by Richard Knepper Organize! By A renew Richard Knepper database.
68000 Assembly Language Programming on the Amiga by Chris Marin Superbase Personal Relational Database by Ray McCabe AmigaNotes by Flae, Richard A look at FutureSound Commodore Shows the Amiga 2000 and 500 at the Boston Computer Society by Hmayteck Tolly Volume 2, Number 7 1987 New Breed ot Video Products by John Fousl.
Very Vivid! By Tun Grantham... Video and Your Amiga by Oran Sands 111 Amigas & Weather Forecasting oy Brenden Larson A-Squa red and the Live! Video Digitizer by John Fcust.
Aegis Animator Scripts and Cel Animation by John Foust Quality Video Irom a Quality Computer by Oran Sands ill.
Is IFF Realty a Standard? By John Foust.
Amazing Stories and the Amig a™ by John Foust.
Afi about Printer Drivers by Richard Bielak Intuition Gadgets by Harriet Mayaeck Toftey.
Deluxe Video 12 by Bob Eller Pro Video Cgl by Oran Sands III Digi-View 10 DlgitizenSoftware by Jennifer M. Jank Prism HAM Editor from Impulse by Jennifer M, Jarik Volume 2, Number 7 1987OTtruw Easy I drawing tablet by John Foust.. CSA's Turbo-Amiga Tower by Alfred Aburto 66000 Assembly Language by Chris Martin.
Volume 2, Number 8 1987 Ths month Amairq CorrpubngTv focuses er erterianm.erc packages for the Amiga. Amarng game reviews._SDI, Earl Weaver Basebal, Portal. The Surgeon, Little Computer People. Sirfcad, Sta/CMer. King's Quest I,II ate III, Faery Tie AsertirB, Ufcma III, Facets d Adventure. Video Vegas and Bard- s Tale.
Plus Amazing monthly columns.. Amiga Notes, Roomers, Modiia-
2. 68000 Assembly Language and Tho Amicus Network.
Dlsk-2-Dlsk by Matthew Leeds The Color Fonts Standard by John Foust Sfcnny C Programs by Robert Rfemerana, Jr.
Wdden Messages h Yew Anga™ by John Foust The Consumer Electronics Show and Comdexty J Foust Volume 2 Number9 1987 Analyze 2.0 rowed by Kim Schaffer impact Business Graphics review by Chuck Raudohs Microfiche Filer revfew by Han laser Pagesetter review by Rick Wreh Glzmoz Productivity Sel 2.0 review by Bob Elfer Kickwcrk review by Harv Laser Dig a Tel ecommunt cations Package review by Steve Hji Mouse Time and Timesivef review by John Foust Insider Memory Expansion review by James Oxoane Microbe tics Starboard-2 review by S. FaiwiszewsJu Leather Goddam of Phobos by Hamet Maytxc* Toly Latbca C
Compiler Version 110 revewed by Gary Sard Manx 14a Update reviewed by John Foust AOBASiC renewed by Sheldon Leem.cn AOBASIC Compiler an artamaive comparison by 9 Catty Modula-2 Programming S Fawszewski Raw Console Dev. Events Directory Listings Under AmigaDOS by Dave Hayn» Amiga BASIC Patterns by Brian Catty Programming with Soundscape Tcdcr Fay mandate's samples Bill Volk, Vice-President Aegis Development by Steve Hull Jim Goodnow, Dmkoper of Ham ‘C interview by Harriet M Tolly Plus a great collection of monthly columns.. Volume 2 Number 10 1987 Mat Headroom and the Amiga by John Foust Taking
the Perfect Screen Shot by Keth Confooi Amiga Artist: Brian Williams by John Foust Amiga Forum on CompuServe”'™ Software Publishing Conference Transcript by Richard Rae All About Online Conferencing by Ren 3rd Rae dBMAN reviewed by Clifford Kent Amiga Pascal reviewed by Mcteef McNeil AC-BASIC Compiler reviewed by Bryan Catty 68000 Assembly Language by Chns Martn Amiga Programming: Amiga BASIC Structures by Steve Mchei Quick and Dirty Bobs by Mchael Swnger Directory listings Under Amiga-DOS, Part II by Dave Hayrke Fast File t O with Modula-2 by Steve Fa-wtszewsto Window i O by Read Predmora
Plus a great col lection of monthly columns™ Volume 2 Number 11 1987 Word Processors Rundown byGeofl Ganbfe ProWme, Scnable!, ard WordPerfect compared LPD Writer Review by Manon Deland Vka Write Review by Harv Laser Aeoit Review &y Warren Btock WordPerfect Preview by Harv Laser JezSan Interview by Ed Bercontz—StaiGidar author speaks1 DcHt-yoursert Improvements to the Amiga Genlock Digi-Paint Review by Harv Laser Sculpt 3D Review by Sieve Pterowtez Shadowgate Review by Linda Kaplan TeieGames Review by Mchael T. Cabral Reason Preview: an intense grammar examination abdication As I See it by
Eddie Churchd WordPerfectGizmcz V20 and Zing1 AmgaNotesby R Rae 4 efectiewe muse books ModuU-2 Programming by S.FawrazewsJc devices, 10. Asenal port 66000 Assembly Language by Chris Martin Display routines The AMJCltS Network by John Fast-Oesldcp PubSsNng, tyttod C Animation Part I by Mike Swnger Annaton Objects BASIC Text by Bnan Catty Puel perfect text positioning Soundscape Part II by Todcr Fay VU Meter and mom Fun with Amiga Numbers by Ain Bamen Rio Browser by Bryan Catty—Fuil Feature BASIC File Browing Plus« great collection ol monthly columns™ Volume 2 Number 12 1987 The Hamate Video
Accessory by Larry White The Sony Connection by Stewsrt Cobb 15-Puzzle in AmigaBASiC by Zoftan Szepsl Ute, Part I: The Beginning by Gerald Hull The irtra-complex rxne bft sduscn to the "Game d Lie.'
Amiga Virus! By John Foust CU Arguments In C by Paul Casfflngtuy MIDI Interlace Adapter by Bany Massonl Amiga 1000-styfe MIDI rtertacos can lit A2000s or 500s Modula-2 by S. Faiwiszewsid Part 1: command loo calculator AmigaNotes by Rick Rae aucic changes made ntoeASOO iA2COC.
Animation lor C Rookies: Part :D by M. Swinger oou&to-Wfenng.
The Big Picture by Warren Ring Assembly language programming Karate Kid Review by Stephen R. Pietriowicz GO! &s review by John Foust James O’Kaana, and Rick Wirth Three C-6* exports nrasbgaleanew Am $a 64 emulator.
A-Tifk-P1us Review by Brendan Larson Calligrapher Review by John Foust Animator: Apprentice Review by John Foust Playing Dynamic Drums on the Amiga by David N, Blank WordPerfect Review by Steve Hul Insider Kwtkstart Review by Ernest P. Viveiros Sr RAM & ROM expansion: Comments and hsallation tp5.
Forth! By Jon Bryan L>jmpRPori utility lor your Mulu-Fonfi toolbox.
As I See It by Eddie Churchill Dgi-Paint, Portal, iVtoeoscape 3D.
The Commodore Show and AmiExpo; New York!
Plus a great collection of monthly columns™ Volume 3 Number 11988 AmigaNotes by Richard Rae Amga dptal muse generation.
C Animation Part IV by Michael Swrtger Forth by John Bryan Sorting art Amiga CHIP and FAST memory The Big Picture by Warren Ring Daring assembler language programming: CU system cats and manipulating disk lies.
Volume 3 Number 1 1988cmtnued 56000 Asssembty Langueage Programming by Chris Marin
• Create a mutt-eotor screen without usng kftjftion routines"
Modula-2 Programming by S. Faiwiszewski A new modJa-2!
Amicus Network Special Report: Fall COMDEX by J. Foust The ultimate Video Accessory: Part H by Larry Whoa Life: Part II by Gerald Huf The Amiga bi.ter.' FormatMaster: Professional Disk Formatting EnginebyC-Mim Put BaKh language to work on the drudgery of disk formating.
Bspread by Bnan Catty M featured AngaBAS lC spreadsheet!
AmigaForuffl Transcript ed by Rd( Rae Amiga's DaraHaynw.
Kaioalc Review by Chxk Ra u»rus easy to use. Spreadsheet.
VIP Professional Review Cry S. Mcdty Manage stock poriolo Money Mentor Review by S.Komp Personal finance sysiom.
Investor's Advantage Review by Richard Knepper plus 'Poor Man's Guide to the Stock Market/ Plus a great collection of monthly columns™ Volume 3 Number 21988 Laser Light Shows with the Amiga by Patrick Mtxphy Lasers and the Amiga; A Dating Tandem The Ultimate Video Accessory: Psrftl by LATyWhie Take the Era! Sfepstow ard Oesgrsng your own videos.
Our First Desktop Video by LarTyWhto Step by -step guide to organizing & presenting your Amiga video.
Hooked on the Amiga with Fred Fish interview by Ed Borkowtz.
Photo Quality Reproduction with the Amiga and Digi-View by Stephen Lebans Balancing your Checkbook with WordPerfect Macros by S Hifl Hand your checkbook worries over to the Amiga.
More Basic Text by Bryan Catty easier ten on an Amiga screen Life: Part III by Gerald Hul Sres winds uo wJi famed nr.e-bi.1 caJoJaten A source to U?£R.
Solutions to Uneer Algebra through Matrix Computations by Ropbert Eiii Srmpify matrix igewa banc operations A routines.
Modula-2 Programming by Stew Faiwiszewski Catching up widi Calc a source tdlow-up.
68000 Assembler Language Programming by Chns Maron Graphics’ Part II ol Assemgram.
Arazok’sTomb interview by Kenneth E. Schaefer AiRT by S. Faiwiszewski innovative icon-basede program, tang.
Forms in Flight by S. Petrawtoz Render A Anmale 3D objects Silicon Drtams and the Jewel of Darkness by K E. Schaefer Leisure suri Larry by Ker.nadr E. Schaefer Two New Entries From Microblobcs by John Foust M501 Expansion i Starboard I MuftFurctiontoa/d.
Mindlight 7 and People Meter by John Feus: Phantasl e Kan E. Schaefer Amazing Phantase Character Editor, Plus a great collection of monthly columns.. Volume 3 Number 31988 Desktop Vkfeo.Part IV by tarry Wfete Put an the p«*5 together-tie desktop ndeo commercia!
The Hidden Power of CU Batch Re Processing by J. Rotfman Mate you? Am ga eas-ct to use with CU Baton ties.
A Conference with Eric Graham edtoC by John Foust The mastermind behind SoJpt 30 and Anrrale 3D.
Perry Klvoiowu interviewed by Ed Bercovin Arjga ntights trom a major Qeveiopef and perscraitry.
Jean 'Moebius' Glraud Interviewed by Edward L Faogan Avant-garde art comes to The Amiga-in dazzling fern.
PAL Help by Perry Kivoiowitz A1003 expansion reliability.
Boolean Function Minimization by Steven M. Hart A useful d^tal desipi tool in AngaBASlC.
Amiga Serial Port and Midi Compatibility tor Your A2000I by L Rdtei and G Rentz Add an AtOOO-styfe senaJ pori to the A2DOO!
Electric Network Solutions the Matrix Way by Robert Elis Enpneers1 Pracsde routines lor usuig matrx algebra The AJ4.U.G. BBS List compiled by Joo RotTrrjn. Chet Solace, £ Dorothy Dean 514 sas phone numbers xi tie U.S. 1 Canada.
FACC B rrvwwod by Graham Kinsey SpeoJycnx Soppy dnves.
Uninvited reviewed by K E. Schaefer Row reviewed by Pamela Rothman brainstorms into mental art.
Benchmark Modula-2 Compiler reviewed by Richie Befek Modula-2 Programming by Steve Faiwiszewski The gameport denca and simple sprites m action.
AmigaNotes by R Rae A1QQQ! Sohware-switchable output filter.
Roomers by The Bandto AmiExpo. Kickstart 1.4, Commodore The Big Picture by Warren Ring- Unified Fieid Theory !f Plus i great colfection of monthly columns™ Volume3 Number 41988 Highlights from AmiExpo, Los Angeles try Steve HUI Writing a SoundScape Pitch Ubrarian T. Fay System Exclusive Upgrade Your A1000 to A50C2000 Audk) Power-by H Bassen Mcdfieationj to help your A1DOD mate swoel music, too!
Amiga Audio Guide Listing ol ail Amga audio products Gels In Multi-Forth by John Bushakra Macrobabca by Painck J. Morgan Ease the trauma of assembly language programming.
Ami 51 AudrtSaxcei The lefts behind a^moseaudo producs.
TakeRvei by Stew HJI five Amip games revewed.
Amiga Notes oy Rick Rao A basic tour of Amga audio.
The Ultimate Video Accesory, Part V by Larry Wfrte Bug Bytes byJohnSlener The Big Picture by Warren Ring Pan El UrJfed Ttyj Thocxy.
Roomers bylhoBardtoHartwarBhynxJoasiedwdeo.and more!
In the Public Domain byC.W.Flatte Ti mo Bandit review by Kdtii Ccnforij AudloMaster review by B. Larson Real-timedgitizing samples.
Music Mouse review by J Hanry Lcwengard Mateig music wthout Jftng a fnger from rie mouse.
Arrtge-Tax Canadian Version rovewbyEdSeroovriz A Canadian hccme tax planning, preparation, & analysis package.
SAM BASIC review by Bryan Catty A new BASIC whch experts ever more tngue Amiga ieaa/es.
Volume 3 Number 51988 Interactive Startup Sequence by Udo Pemisz The Command Une part Iby Rich FaJconbyg AmiflaTrti lit by Warren Block—Tips and trines to ease Amiga ife Amiga ProductGdde: Hardware Edition Proletariat f^cgramming by Pquaid—PuWcdoman compilers The Companion by P.Gosseiin Amiga’s Event Handing capability.
MindUghl 7 revewd by David N. Blank VideoScape 3-D 2.0 renewed by Dand Hopkins Extend r&y*w*d by Boon D. Catty—An ArrigaBAS’C erienson AssemPro reviewed by S Kemp Operang assembly laryua APL66000 reviewed by Roger Neison Book Reviews by Richard Grace—Three "C* programmog texts.
CBTREE reviewed by Mchael bstnan C programmer, aid The Big Picture by Warren Flng 3 pan Unbed FtyJ Ttyry ends Modula-2 by S Fawiszewski Termination mods lor Benchmark £TDI 63000 Assembly Language by Chris Martin display routines.
Plus a great collection ot monthly columns.. Volume 3 Number 61988 Bear Time Reviewed by Stevo Carter A1OCO battery-backed clock Acquisition Reviewed by O H. Blank apoweriui refetional database.
Butcher 10 Reviewed by G.Hyll diverse image processing utilities.
Reassigning Workbench Disks by John Keman Erdtess ask swappng cor.es to a mercxU end.
Product Gu>de: Software Tools Edition put your Amiga to work.
An IFF Reader In UuftFForth by Wtffen Block Basic Directory Service Prog ram by Bryan Catty A programming afierrusve to the GinmeeZereZoro windows.
C Notes from the C Group by Stephen Kemp C programming rtro.
An Amiga Forum Cdnfertnce with Mackrai Son ot Seven AssemWen Reviewed by Gerald Hid The 1938 Commodore Amiga Developers Conference A took inside the conferences held in Washington, D.C. Amiga Working Groups by Perry Ktvotowlte and Eric Lavltsky An o^Sne o< the nnovative Amiga Wortong Groups concept The Command Une by Rrih Faicona/g Expiamg ne rnuto-taJented UST eomaavL Plus a great collection of monthly columns™ Volume 3 Number 71988 Look, Up On the Sam, it’s in Aml_ If s a Pro... If s SuperGen reviewed by Larry Wise—Genlock comparisons An Interview with * Anlm Man," Gary Bonham by B. Larson
An animated conversation witii tho man behind tho lormaL The Amiga at Spring COMDEX in Atlanta by Ed Bercovitz Amiga Product Guide: Video Graphics Edition Thirteen pages devoted to die Amiga’s dazzling strong suit.
The Developing Amiga pj Steve Pietrowia Developers' nctes Roil Those Presses! By Barney Schwartz Welcome to toe dandy, denandngworri of desktop pubtshcig1 Linked Lists In C by W.EGammJl Pul Cynanc memory to work' FrameGrabber Preview by Oran Sands Captunng an maga can now be as last as punching a sng'e key1 A First Look it Interchange reviewed by David Hopkins Bridge the gap between those incompatible animator) packages.
Perfect Vision rcrewed by Bryan Caty Capture, dgibze and save pictures from any video voi ce ProWriti 2.0 Review renewed by Pam A Rothman A graphic word processor specializing in efficient edis ng.
Doyg's Math Aquarium: The Art of Mathematics by R. Be'ak Bear Products MegiRei B Expansion RAM by Steve Carte The Command Line by Rich Ficcnturg Amiga Notes by Rc* Rae The Qtoer Guys' Synffva dgtal synthesizer C Notes from the C Group by Stephen Kemp Weathering me unknown *C* of base cbfect and date types.
Plus a great coiiection of monthly columns™ Volume 3 Number 81988 The Command Line by Rich Falcon burg CU KnstrtJCtton The Developing Amiga by Stephen R.Pietrowicz A gaggle ot groat programming tools Modula-2 Programming by Steve Fa.w.srewsta Libraries and the FFP and tEE Math Routines C Notes from the C Group by Stephen Kemp Arrays and pointers Dark Castie rovewed by Kerth Contort—'The Black Knight kxka Ports ol Call revfewed by Aie Lanky Leatherneck reviewed by Mchael Creeden-Ranbo's net so tough!
Capone reviewed by Joyce and RofcCy Ffcks- Light Guns blaze Casino Fever reviewed by Michael T. Cabrai-Vegas on Amiga Ferrari reviewed by Jeffery Scon Hall—Start your engine Arkanoid reviewed by Graham Kinsey—^'blockbuster' Etionstar by Ke.th Contort -black hofe tetar^.
Detiwe Production reviewed by Harr Laser—Video wizardry Game Pizazz by Jeflery Scon Hat— Register you Questions here.
TrackMouse by Darryl Joyce Convert a standard Ateri trackba! Into a peppy Amiga TrackMous*.
Axnga Interface tor Bind Usera reviewed by Cari W. Mam An ngeraous interface that opens toe Arr.gato even mora users!
Video in the Sunshine State renewed by Stephen R Rebowcz RG3 Vioeo Creations hcsa a video unveling' Amiga Product Guide: Games Edition Tumblin' Tots by Davd Ashley—assempfy language fxogram.
Plus a great collection of monthly columns™ Volume 3 Number 91988 The Kideo Tapes by John Dandurand A Georga efemerra/y scrtool puts desktop «3eo o wohc Speed-ng Up Your System by Tory Preston Coppy cak cacrtng Amiga Product Guide: Education Edition Everything you need to send your Aniga to the head ol na class.
Computer Aided Instruction by P.Castorguay in AngaBASlC.
Gets In Multi-Forth. Part II: Screenplay ay John Bushakra Make the FF converter trom Part f easy to usegadgets, menus .etc. Aim Expo Midwest '88 by Michael T. Cabral Amga wjws Chicago Intetlitype by Ha/v Laser—Learning to type made easy, . And bn?
Shakespeare by Barney Schwartz-Desktop pub*shing n ful color.
Xspccs 30 by Stew Hi^—A rww cimersion m Amiga graphics, AmigaNotes by Rrihard Ras-Hcw IFF sound samples ara stored?
Take Five! By Steve Hut—Seat toe baA-to-schod b*ues!
The Command Une by Ren Fatoortnyg-ccfibrxing tax of CU.
C Notes from the C Group by Stephen Kenp Operators, exprossens. And statements in C uncovered.
Roomers by The Bandtio Can Appfe l!gs Plus keep Amga away?
Volume 3 Number 101938 A First Look At Deluxe PhotoLab reviewed by David Duboiman DiskMaster reviewed by Steve Hull —fife management utility.
DSM: A MC660000 Disassembler reviewed by Gerald Hul Lookng tor eaty nodifabfe. Aisembier-raady coda?
Fbasic Language System re-newed by Patrick Quad BASJC com pier and development system.
Hot on toe Shelves by Michael T. Cabral—Deviant doe, gnpping gray scales, cater cartography, nuiing modems, and much mere.
The Commend Line by Rich Faiconburg NEWCU: A painless way to craas a new conscfe wmdow.
The Developing Amiga by S. Pfetrowicz Usenei-24-Hour Nows C Notes trom tho C Group by Stephen Kemp -loops Roomers by The Bandrio WP wars, ignom-mjs interfaces. A more PD Serendipity by C.W. Ratte-Fred Rsh coifeowpasses 150.
Comparison of MultiSean Monitors by Steven Bender Record Keeping for Free-lancers: A Supertiase Professional Tutorial by Mancn Deiand Record keeong system for frge-'axe pholographera and others.
On The Crafting of Programs by Davd J. Hankns—A too* at opurization kcks off a senes ot articles on programming sawy.
Bob and Ray Meet Frankenstein by Rcttert D Asto-Oeaie. Arwnate, and netamorphoso grafto.cs obiocts in AmigaBASlC Digital Sigrul Processing In AmigaBASiC by Robert Els Perform your own dptal experrments wtto Fast Fourier Transforms.
HAM & AmigaBASlC by Bryan Caty—Pack ycur AmigaBASC programs wlh many ol the A/nga's 4W6 shades!
CAJ—Computer Aided Instruction: Part 11 by Pad Caslcnguay The Edtar program wraps up our authoring system in AmigaBASlC.
Volume 3 Number 111988 Desktop Publishing with Professional Page by Saroy Schwartz tutorial tn dociment creation, plus som 3 jazzy enhancements.
Game Pizzazz by J. Hal gaming hints, tips, hgh-score secrets.
Structures In C by Paul Castonguay C programming in an nutshell On The Crafting of Programs by 0. Hankins speed up your progs.
Desktop Video VI: Adding the Third Dimension by Larry Wtisto Urrare!ng toe tsmpiexry cl 3D ter yxx video creabons, A2000 Hard Drive Round Up by Sheldon Leemon Keyctick by Mke M. Duppong a typewnter dck in your keyboard Mora linked Lisa InC: Techniques and Applications by Forest W. Arnold Procedures lor managng tats storing diverse data typos ri too same fist, and putting las to work in yar programs.
BASIC Linker by Bnan Zupke Combine individual routines from your program library to create an executable program.
The Developing Amiga by Steven Pietrowicz A look at nyseres and successes behnd effcen: beta testing.
Modeie r 3D Preview renewed by Davd Hopkins A peekinsde a new. Open-ended 3D Package.
AproDraw Graphics Tablet ravened by Keith Ccrtort Artists1 Meot toe tutor* of Am^ graphics SarGlide* II reviewed Cry Jeffery Scot Hal Those inflating Ergcrs are back ter anctoer aser-iasfting.
Wshell renewed by Uwranco Lxtotman Cll substitute.
Hot on the Shelves by M Cabrai viruses, muse, merofcne mastery PD Serendipity by C.W. Flare Fred Ftsh disks 149-152, Roomers by The Bandtto Golden RAM, 16-bit videogames, CD-I, anctoer HAM skirmish what cotid pcss&y be NeXP Volume 3 Number 121988 Hot on the shelves by M, T. Cabral Graphic advenaxe, control oisr Preferences, a Poslsatp* pnnt uttey.
Sequence 'fra aoon amabon. A new deaJ for user groups and toe fgu’socnsbucticrseti PD Serendipity by C. W, Flatte Fred Fsh asks *. 58-162 RocmmSy The Bandito AmiExpo. C.O. toe latest from Commodore and more.
AmiExpo Caiitomla By Stephen Kemj Hot— At the news.
EMPIRE reviewed by Stephen Kemp EM? IRE, toe game of conquest has finally come to ne Amiga.
Virus Infection Protection (V.LP.) revewed by Jeffery Scott Hail Whal makes a computer sick and toe cure.
The Command Un* by Rd Fafcoturg WhaJ to dc when toe commands tf AmgaDos taT.
Converting Patch Librarian Res by Ptsi Saunoers Hew c get your sands trom there to hero.
E. C.T. SanpfeWara by Tim Mohansingh The E.C.T samples contain
several gems.
The Craacon ol Don Bluto's Dragon’s Lair by Raney Linden.
Easy Menus in Jforth by Phi Burk HELLO WORLD.
Extending AmigaBasIc by John Keman The use of library ca3s from within Arr.igaBASlC. Better Dead Than Allen reviewed by Jeffery Scott Halt Doril fire Lritil you see toe greens b! Their eyes.
Getting Started in Assembly by Jeff Gfer.
An rtirocUrton to Aruga assem by language program m,ng ADBASIC1.3 revwwd by Bryan Cadey Re'ease 13 of Abscri s AG'BASIC compder fa toe Amiga.
Thexder revewed by Bruce Jordan Action. Atoemuro. Fantastic Sound, and sunning Graphics Magellan: The AMIGA Gets Smart reviewed by Srera Gilmer ArtifiCia! Nro-.gence comos to toe AMIGA C Notes From The C Group by Stephen Kemp Program or luneton control coding; the ase history.
AmigaDos, Assembly Language, And FiIeNotes by Dan Hutito Help agansf tie overbad, accurate, descr.pt.ra fte naming Volume 4 Number 11939 TheWondertjl World of Hashnique reviewed by Shunms Moraer A ro-tew of toe Amiga soti ni.ro produrts of Hash Enterprises Desktop Video by Richard Stair Thinking about getting into Vrieo’ Here's what you'll need to know.
Industrial Strength Menus by Robert O'Asto Add some snazzy submenus to your AmigaBASlC cuisine Second Generation 20 Animation Software by Geoffrey Wjams Cel Animators ana Key Frame Animators.
How they d Her and a look into toeir use.
What’s The Ditf? Reviewed by Gerald Hul A review ol Lattice's Compver Companion Scrolling Through SuperBitMap Windows by Read Prerir-re irpfem ert SupoStiMaps tor viewing drawng sua la.'ge grapfec areas Afive in 3 D by Stamms Mother A review ol CaSgan, a High-End 3D sculpting 4 animation package.
Sync Tips by Oran J. Sands 111 Dot crawl, ne Amiga and compose video Cevxes.
How May 1 Animate Thee?, Let Me Count The Ways- by Shamms Mortar An overview ol animation techniques.
Stop-Motien Animation On The Amiga by Brian Zupke A tends on approach to animation and the Ati iga.
Roomers ty The BanJio Commodore’s deal. RAM chip cr.ss. ate more!
C Notes From the C Group by Stephen Kemp Structures ¦ A pcvrartjf feature of C On the Crafting of Programs by David J. Martens Wtei Formal is right ty you The Command Line by R<h Fatoonbug A took at new and «nproved Assembly Language commands Questron li reviewed by Jeffery Scott Hail Questran Jl • It's a journey back in time Pointers, Function Pointers, and Pointer Declarations In C by Fores W Arnold Reducing data type dependences Las Vegas Comdex Report by Laiso E-rintmarn Commodore's new 2500.2500 UK ate more1 Philadelphia World of Commodore ty Chns Darsch i Rck Rae Hightights o‘
Pteadeipha’s Comnvtecre Stew STELLARYX Review by Stephen Kemp Exciting £ enalangingf Temfc Stereo ate scute effects AltanokJ Imposters: Unmasking the Impostors* reviewed by Jeifwy Seed Han A took at Artanoid look-alikes Bug Bytes by John Sterner Eugs ate upgrades Death of a Process by Mark Casbrr.an Develop an error handfeg modute h M.odifa-2 Tobecontnued .. To Order Back Issues, ipicJSC use ihe order.form on page 112 Amazing Advanced Programming FULL Y UriL/ZINQ THE (58881 8!A Ttl 00580055508 Turbo Mandelbrot and Julia Set Calculations FAKT II by Read Predmore Introduction This is Part Two of
a series of articles on assembly language programming of the Motorola MC68881 math coprocessor. Part One in the March 1989 issue of A mazing Computing [Ref. 1] discussed the speeding up of the Savage benchmark. This month I will discuss something with more visual appeal—calculating Mandelbrot and Julia sets.
First I will give a brief overview of Mandelbrot and Julia sets and then discuss a common algorithm which can calculate eidier one. I will describe several example Mandelbrot and Julia sets. Finally, I’ll describe various program files which are used to display these sets.
I want to emphasize that the MC68881 macros and die assembler source code in these articles are not specific to die MicroBotics Starboard 2 unit. Odier implementations of die MC68881 math chip will run this code by changing only the base address of the ‘881 chip. However, the routines as written are not multitasking. A multitasking version would require rewriting the Amiga task scheduling handlers to save and restore the state of the MC68881 chip.
Calculating Mandelbrot andJulia sets The Mandelbrot and Julia sets are calculated according to algorithms, which are described in The Beauty of Fractals by Peitgen and Richter [Ref. 2], Although there are numerous books available on Mandelbrot sets and fractals, I am using floe Beauty of Fractals since the algorithm is symmetric enough to be used for both Mandelbrot and Julia sets, and tiiey have lovely sample pictures as well.
Both Mandelbrot and Julia sets are calculated over rectangular areas in die complex plane. However, you do not have to know a thing about complex numbers to follow' tiiese calculations, since each complex number is represented by a point in the X-Y plane. For example, the complex number Z is represented by' die pair of numbers (Zx, ZyO. The Mandelbrot or Julia sets are calculated over a rectangular areas whose corners are given by (Xmin, Ymin) and (Xmax, Ymax).
Figure Two (left) interesting non- symmetrical Mandelbrot sets can be generated from non-zero values for cx_in and cy_in.
For a Mandelbrot set, the X-Y plane represents die complex number C. For Julia sets, the X-Y plane represents the complex number Z. "So what?", you might ask (with justifica¬ tion). In a mathematical sense, the Mandelbrot and Julia sets are perpendicular or orthogonal to each other. There is a Julia set associated with each point of the Mandelbrot set. This is illustrated in a schematic w'ay in Figure One, which has the Mandelbrot set in perspective with parts of Julia sets sticking out like playing cards. Although diis figure is not strictly true in a mathematical sense, it does represent the
orthogonality' of the Mandelbrot and Julia sets.
The axes Cx, Cy, Zx and Zy actually define a four- dimensional hyperspace, where the Mandelbrot and Julia sets are only tw'o of the possible six planes which can be view'ed.
The Mandelbrot set is represented by the Cx-Cy plane for a given point (Zx, Zy), and a Julia set is in the Zx-Zy plane for a given point (Cx, Cy). The odier possible planes and their associated points are: Plane Point Cx-Zx (Cy. Zy) Cx-Zy (Cy, Zx) Cy-Zx (Cx. Zy) Cy-Zy (Cx, Zx) I just mention these other possibilities since most articles do not discuss them and die extension to die MANDEL_881 program to include them is straightforward.
The function calc_dbleO uses X, Y coordinates, which define a box over which either die Mandelbrot or Julia set is to be calculated. This function calculates the limits for one row of pixels at a time. Between rows, die program can respond to user interactions such as resizing or scrolling the SuperBitMap window, or selecting die Close gadget so die program can be stopped.
Once die parameters are set up for a point, the calcula¬ tions are the same for both the Mandelbrot and Julia sets. The fascinating patterns generated are found by repeatedly squaring a number and comparing the squared number with the maxi¬ mum squared number. More information is given below in the section on details of calculations.
Ushig the programs The program MANDELJ581 is used with a one-line text file with several parameters. Table One has parameters for four Julia sets and seven Mandelbrot sets. The first parameter is a string of characters slarting with either JULIA or MANDE in capital letters. In die table, the _18, etc. stand for maps in die book Ihe Beauty of Fractals. It is important that there be no blank spaces in this Label or die second group of characters will be interpreted as a number. Following the label are seven floating point numbers representing Xmin, Xmax, Ymin, Ymax, Cxjn, Cy_in and Z2max. The
last number is a positive integer which is the initial value for the maximum number of iterations.
If the program is left running, the maximum number of itera¬ tions is doubled after each complete pass through the set.
Details of calculations Listing Two gives die calc_dbleO function which calculates eidier the Mandelbrot or Julia sets for a row of pixels. The starting and ending pixel numbers are nx_min and (nx_max-l).
The maximum number of iterations is given by maxjter, and die number of iterations found for each point are stored in the resultsD vector. The criteria for stopping the iteration for each pixel is that the magnitude squared of z, which is die variable z2, is greater than or equal to the input variable z2max.
For each pixel, die local variables cx, cy, zx and zy are initialized using the input variables cx_in, cyjn, xmin and x. For Mandelbrot sets, zx and zy are constants for the entire row and are set to die variables cx_in and cy_in, respectively. For die usual Mandelbrot set, cx_in and cyjn are both equal to zero, but odier interesting non- symmetrical Mandelbrot sets can be generated from non-zero values for cx_in and cy_in. An example is shown in Figure Two for Z=(0.2,-0.3) over C=(-2.25,-
1. 5} to (-1.5,1.5). The current value of cx for pixel nx is
given by cx = xmin + nx'dx.The variable cy is set to yjn,
which is the Y value of the current row.
Table One Sample Mandelbrot and Julia Set Parameters Type XMIN XMAX YMIN YMAX CXJN CYJN Z2MAX Num Iterations JULIA 18
- 2.00
2. 00
- 1.50
1. 50
0. 32000
0. 04300
100. 0 64 JULIA 20
- 2,00
2. 00
- 1.50
1. 50
- 0.12375
0. 56508
100. 0 16 JULIA 22
- 1.50
1. 50
- 1.50 1,50
- 0.39054
- 0.58679
100. 0 16 JULIA_24
- 2.00
2. 00
- 1.50
1. 50
- 0.11000
0. 67000
100. 0 16 MANDEL_26
- 2.25000
0. 75000
- 1.50000
1. 50000
0. 0
0. 0
100.
16 MANDEL 27
- 0.19920
- 0.12954
1. 01480 1,06707
0. 0
0. 0
100.
32 MANDEL 29
- 0.95000
- 0.88333
0. 23330
0. 30000
0. 0
0. 0
100.
32 MANDEL.30
- 0.71300
- 0.40820
0. 49216
0. 71429
0. 0
0. 0
100.
32 MANDEL 33
- 1.78100
- 1.76400
0. 00000
0. 01300
0. 0 0,0
100.
32 MANDEL 36
- 0.75104
- 0.74080
0. 10511
0. 11536
0. 0
0. 0 100, 64 MANDEL 38
- 0.74758
- 0.74624
0. 10671
0. 10779
0. 0
0. 0
100.
128 For Julia sets, which are calculated for rows of points in the Zx-Zy plane, the initialization is: cx = cx_in; cy = cyjn; zx = xmin + nx'dx: zy = yjn; Once die C and Z variables are initialized for eidier a Mandelbrot or Julia set, the iteration procedure is die same: for(nam_iter=0; numjtercmaxjter; r>umjter++) ( zy2 = zy‘zy: z2 = zx'zx + zy2; if(z2 >= z2max) break; zy = 2.'zx'zy + cy; zx = zx'zx - zy2 + cx: 1 resulfs(nx) = numjter; The break command causes a brancli out of the loop where the number of iterations is stored in the results!] vector.
The calculations within die loop are further broken down into single operations in Listing Two so the code can be converted into ‘881 macros more easily, Converting to '881 assembler To utilize the '881 macros in file MC68881.I of Part 1 (Ref.
1], the Manx Amiga C compiler is used to compile die file CALC_DBLE.C with the command: CC +FI -A -N -T -O CALC_881 ASM CALC_DBLE.C which gives an assembly listing widi the file name CALC_881.ASM [Listing Three], The -T option is used to keep the original C listing as comments. The -N option gives debug- (continued"j ging information for the Manx SDB source level debugger. I had hoped to include a debugging function which printed out the '881 floating point registers in this article, but time constraints have postponed that to the next article.
The lines in CALC_881.ASM, which start with ~ or A, provide information for the Manx SDB debugger. For example, input variables such as cx_in have a positive offset (24) with respect to the stack pointer register A5 of die 68000 CPU. And local variables such as cx have a negative offset (- 40) with respect to A5. The variable nx is a register variable in the D 5 data register of die 68000 CPU.
Numerous modifications or additions are now made to the original CALC_881.ASM file. After the include file MC68881.I is read in, seven variables, zy2, zx, zy, cx, cy, z2max and z2 are EQUated to the last seven floating point registers (FP1 to FP7) internal to the ‘881. The EQUates between variable names and ‘881 registers dramatically improve the readability and ease of debugging of the program. Where code has been modified, the original code has been commented out with semicolons and moved to the right of the line. The new code is at the left part of the line.
Outside of die loop over nx, z2max is stored in the ‘881 by moving it to (D0/D1) and using the macro: PROCDODltoFPN fmovez2mox At the start of the nx_loop, die variables cx, cy, zx and zy are initialized according to the mand_flag and stored into the ‘881 floating point registers.
Most of the '881 macros were discussed last time, except for the floating point comparison and branch macro, This is used on lines 185 and 186 of the file CALCJ381.ASM to test if (z2 >= z2max): REGREG fcmp.z2max.z2 FBCC.S ge^eUresult First, the floating point comparison (fcmp) in used on the registers containing z2max and z2. Then die test for greater- dian-or-equal -to(ge) is used and, if TRUE, a branch to the label set_result is taken.
At the end of die assembler listing, die SHUTDOWN_881 macro is used to restore the A2 register. An addition to the data segment (dseg) part of the listing is the public reference to _MC68881_BASE. This is a global variable in die C program and needs to be referenced during the SETUP_881 macro. It contains the physical address of die MC68881 chip and is found by the test_88l0 function.
Plotting the results The function plot_results.c is a separate listing [Four] since it will be modified when the turbo_pbcelO function is discussed in the next article. The results]] vector contains the number of iterations for each point in die row of pixels given by NY. The first two colors are reserved for the border color except for color zero, which is used by points which have the maximum number of iterations. The numbers that have been calculated are cyclically mapped onto the remaining colors with the modulus function (%). The pixel color is then changed with the SetAPenO function and
die pixel is actually written with the WritePixelO function. Normally, nx_min is 0 and nx„max is set to the SuperBitMap width, but the routine was written with the possibility' of writing only part of a rove Program listings The source code listings MAND_881.C and MANDSUBS.C, which have been adapted from the SCROLL.C listing of Ref. 3, are given in Listings One and Slx. The functions calc^dbleO and calc_88lO (Listings Two and Three) are the additions in die calculation of the Mandelbrot and Julia sets. In MAND_881.C, the test_8SlO function has been trimmed down by eliminating the print
statements so the program can he run from an icon.
The input of the various parameters has been separated into the get_mdataO function so that eventually data could be entered via an ASCII file, a requestor or an Arexx port.
The MAKEFILE for this set of program files is included in Listing Seven.
The include file MANDEL.H [Listing Five] defines various screen and window parameters, as well as die SuperBitMap size.Numerous void functions are also defined. Finally, global variables are defined as external for files other than the main module MAND_881.C. Corrections Two errors in Part I [Ref. !] have come to my attention. In Table Two, the SETUP_881 and SHUTDO\VN_881 macros only utilize die A2 register of die 68000 CPU. The register A1 was used until I discovered there was a conflict with the printfO function.
More importantly for this month’s program is a missing left parendiesis in die FBCC macro in Listing Four for the MC68881.i include file. On page 75, the first line after FBCC macro .... should read move.w #\Lcondition(o2) To be continued... Next time I will finally provide die ‘881 debugging function, give timing results for various mathematical libraries and discuss die turbo_pixelO routine for changing the colors of a set of contiguous pixels.
References
1. "Fully Utilizing the Motorola 68881 Math Coprocessor: Part 1,
Turbocharging the Savage Benchmark",
R. Predmore, Amazing Computing, Vol. 4 No. 3, pp. 69-75, March
1989.
2. The Beauty of Fractals. H.O. Peitgen and P.H. Richter,
Springer-Verlag, New York, 1986.
3. “Scrolling Through SuperBitMap Windows",
R. Predmore, Amazing Computing, Vol. 4 No. 1, pp. 101-108,
January 1989- Listing One MAND_881.C
* < MAND 881.C >= Copyright (C) 1989 by PiM Publications & Read
Predmore All Rights Reserved 26 March 1989 0 13:17 Tell Them
You Saw Them ?define MAIN_MODULE 1 ?include "raandel.h" in long
cur_resource; GRAPHICS DEFINITIONS ____ struct Gfy.3ise
"Gfxaase; struct IntuiticnBase 'IntuitionBase; struct
LayersBase ^LayersBase; U3YTE screen_title[80],
wincow_titleO{80], window_titlel[80]; struct BitXap "pSBM;
struct Screen 1pscreen0; struct Window *pwindow0; struct Inage
Horiz_image, Vert_image; struct Proplnfc Horiz_orop, Vert_prop;
struct Gadget Horiz gadget 2 { NULL, 1, -7, -16, 8, GADGHCOMP |
GRELBOTTOM | GRELWIDTH, RELVERIFY I GADGIMMEDIATE | FOLLOWKOUSE
| B077QMB0RDER, PROPGADGET I GZZGADGE7, (APTR) 6Horiz_inage,
NULL, NULL, 0, (APTR) 4Horiz_prop, H0RIZ_SCR0LL, NULL };
Whenever you contact an Amiga vendor, let them know which Amiga
publication you prefer.
Struct Gadget Vert_gadget i 4Horiz_gadget,
- 15, 10, 16, -18, GADGHCOMP 1 GRELRIGHT I GRELHEIGHT, RELVERIFY
I GADGIMMEDIATE t FOLLOWKOUSE I RIGHTBORDER, PROPGADGET I
GZJGADGET, (APTR) &Vert_image, NULL, NULL, 0, (APTR)
4Vert_prop, VERT_SCROLL, NULL Global argument count which will
be zero if started front Workbench. */ int Gargc; ?define
JULIA_SE7 0x0001 ?define MANDEL_5ET 0x0002 struct Mandel_Data {
DOUBLE xmin, xmax, ymin, ymax, cx, cy, z2max; unsigned short
max_iter; unsigned char mflag; void *KC68861 BASE;
/*BIIIBBEBBISBSIE main(argc, argv) int argcr char -argv[]; i
DOUBLE xmin, xmax, ymin, ymax, cy, dy, cx, dx, zy, z2raax; long
dxnax, dynax; SHORT keep_going * (SHORT) TRUE; time_t
start_time, stop_time; ULQNG gadget_state; unsigned short
'results; unsigned short gadget_id, raax_iter, nx_min, nx_max,
ny, ny_min, ny_max; struct Ir.tulMessage mylntuiMessage,
*teaplntuiMessage; struct Window *pcur_wind; struct Mandel_Data
mdata, get_mdata(); unsigned char rr.and_flag = 0; ¦ naBtssssa^
MAIN jBaBSSsas.MssraMMBBSSB1 / (continued)
(B'pcur„wind->HL8yer->£uparBitHap->BytesPerRow>,* if(! (results
- tnallac ((unsigned Int) (slreof (unsigned leng) "nx^juax))) )
raya’oort (“Cannot allocate neiccry for results'); dxnax =
(long) ((B * ^ pcur wir.d->K!.ayeE->SuperBitMap->BytesPerRow)
- pcur wind~>GZ2Width); dymax «-(long)
(pcur_vind->WLayer->SuperBltMap->Rows-pcur_wind->GZZHeightl;
gadget_state “ GADGE7UP; scroll SBMtpcur vrir.c, £Koriz_prop,
$Vert_?rcp, -xmax, dymax, (USHORT HBORIZ_SCROLL I
VERT_SCROLL)); dx = (xnax-xmin) / ((DOUBLE) (nx_max-l)) ;
ny_min - 0; ny B ny_min; ny max ** (unsigned short] pcur
wind->WLayer->SuperBitMap->Rows; dy = (ymax-ymir.) / ((DOUBLE)
(ny_r.ax-1 > > ; start_time = time((time_t ") NULL);
while(keep_going) ( zy « ymax - ny * dy; if (MC68881_BASS)
calc_BSl (xmin, dx, cx, cy, zy, z2max, nand_flag, results,
max_iter, nx_min, nx_max); else calc_dble(xmin, dx, cx, cy, cy,
z2maxrmand_flag, results, max_iter, nx_min, nx_max); plot
results(pcur_wind, results, max_iter, nx_nin, nx_nax, ny); /*
for(i=nx_min; i<nx_max; i++) total_iter +- results[ij; */ ny^ +
; if(ny ny_max) ( stop_time = time((time_t *) NULL); ny =
nyjsin; max_iter ’= 2; start_time D cine((time_t ") NULL);
while(tempintuiMessage = (struct IntuiMessage “> GetMsg
(pcur_wir.d->UserPort)) { mylntuiMessage n *tempIntuiMessage;
ReplyMsgltempIntuiMessage); switch(myIntuiMessage.Class) | case
GADGE7UP: gaaget_id * ((struct Gadget *)
mylntuiMessage.XACdress)->GadgetlD; scroll_SBM(pcurjrfind,
iHoriz_prop, &Vert_urop, dxmax, dymax, gadget_id); gadget_state
= GADGE7UP; break; case GADGE7D0WN; gadget_state M GADGETDOWN;
gadget_id =• ((struct Gadget -)
mylntuiMessage.IAddress)->GadgctID; break; case MOUSEMOVEt
if(gadget_state == GADGETDOWN) scroU_SBM(pcur_wind, 4Koriz
_prop, sVert_prop, dxmax, dymax, gadget_id]; break; case
NEWSIZE: dxmax * (long) (B *
pcurmwinti->WLayer->SuperBitMap->Byces?erRow)
- pcurjrfind->GZZWidch; dymax « (long) ccur
wind->WLayer->SuperBitMap->Rovs - pcur wir.d->GZZHeight;
scroll_SBM(pcur_wind, Shoriz_prop, &Vert_prop, dxmax, dymax,
(USHORT) <H0RIZ_SCR0LL | VERT_SCROLL>); update__scroII_gadgers
(pcur_wind, £Horiz_prcp, &Vert_prcp>; break; case CLOSEWINDOW:
while(tempIntuiKessage ¦ (struct IntuiMessage *)
GetMsg(pcur_wind->UserPort)) ReplyKsg(templntuiMessage);
keep_going = (SHORT) FALSE; break; default: break; } /* End of
switch loop. "/ ) /• End of while(IntuiMessage) loop. */ 1 /-
End of while(keep_going) loop. */ free (results); myabort(“End
of Mandel ) 81 program."); /«===============*====< GET_MDA7A
>===================
* Get data for Mandelbrot or Julia set calculations
* from requestor or file.
* Read Predmore, 13 September 1988.
Struct Mandel_Data get_mdata(filename) char *filename; I char buffer[1261; FILE *infp; struct Mandol_Data red;
md. mflag = NULL; if((infp = fopen(filename, "r"))) I ivoid)
fscanf (infp, “%s", buffer); if ( (stmemo (buffer, '‘MANDE",
5)) == Q)
md. mflag = MANDEL_SET; else if( (strncmp(buffer, "JULIA", 5)) ¦«
0) md .mflag = JULIA_SE7; (void) fscanf( infp, " %lf", had.
Xrain); (void) fscanf( infp, " %lf".
Had.
Xmax); (void) fscanfI infp, w %lf", &ma.
Ymin) ; (void) fscanf( infp, ” %lf", 4md.
Ymax); (void) fscanfI infp, " %lf", &md.
,cx); (void) fscanf( Infp, " %lf", &md.
,cy); (void) fscanf( infp, ” %lfw, £r.d, .z2max), (void) fscanf( infp, w %d", &md . Nax_it< ) return md; ) INIT^CO LOR_KAF 1 >=* ======= /¦ - Set up col ors for the set een.
* / void init_color_map(pscreen) struct Screen -pscreen; I static
short map_vaiues[16] « ( /-Format OxORGB OxORGB OxORGB OxORGB
*/ /» 0 */ 0x0000, /• I'/OxCBBB, / * 2*/Ox020Q, /* 3*/Ox03CC,
/- 4 */ 0x0400, /• 5*/OxC500, /* 6-/0x0600, /" 7-/0x0700, /- 8
•/ 0x0800, /¦ 9-/0x0900, /*10*/OxOAOD, /*ll'/0xQB0C, /* 12 •/
OxOCOO, /-13*/0x0D00, /*14*/0xOE00, /-15-/Cx0F00 LoadRGB4
l4pscreen->ViewPort, map_values, 16L); I TEST_881 >«**=»=== = =
«»=-*.-===== = = "= io66681.library test program and math chip
locator
* by Jin Goodnovr II “/ struct { struct Library io8_lib; void
*iofi_680Bl; } *lib_B81; void test_681{) Iib_8Sl = (void -)
OpenLibrary("icSBool.library", 0L) ; MC653B 1__BASE = (void •)
0L; if(lib_881) ( MCSB631_BASE - lib_331->io8_c3881;
ClcseLibrary((struct Library •) lib_381); ) } Listing Two
Calc_dble.c /•=aas=SBBuaa=n3SBBB==< CALC _DBLE.C >==»=« s==aa,
IS = = = = = = = = = = = Copyright (C) 1985 by PiM Publications
& Read Predmore All Rights Reserved 27 March 1989 8 12:07
#define JULIA_5ET 0x0001 Idefine MANDEL SET 0x0002 void
calc_abie(xmin, dx, cx_in, cy_in, y__in, z2nax, tnand_flag,
results, max_iter, nx_min, r.x^max) double xmin, dx, cx_in,
cy_in, y_i.n, z2max; unsigned char mand_flag; unsigned short
-results, aax_icer, nx min, r.x max; register unsigned short
nuin_iter, nx; double zx, zy, z2, zy2, cx, cy;
if((mand_flag==MANDEL_SET) II (nand_flag==JULIA_S£T)>
for(nx=nx_min; nx<nx_max; nx+ + ) { if (mand_flag MANDEL_SE7) {
cx » xmin +• nx*dx; cy * y_in; zx - cx_in; zy ¦ cy_in; }
if(mand_flag =- JULIA_SE7) { cx - cx_in; cy = cy_in; zx ¦ xmin
+¦ nx*dx; zy - y_in; J for (num_iter=0; num_iter<max_iter;
num_iter++) ( zy2 = zy‘zy; zy *¦ zx; sx * = zx; /' z2 - zx*z>:
+ zy*zy */ z2 = zx + zy2; if{z2 >¦ z2max) break; /• zy -
2,"zx*zy + cy; */ zy += zy; zy += cy; /* zx = zxtzx - zy*zy +
cx; *!
Zx -- zy2; zx +¦» cx; ) results [nx] - nuir._iter; MOVING?
SUBSCRIPTION PROBLEMS?
Please don't forget to let us know.
If you are having a problem with your subscription or if you are planning to move, please write to: Amazing Computing Subscription Questions PiM Publications, Inc.
P. O. Box 869 Fall River, MA 02722 Please remember, we cannot
mail your magazine to you if we do not know where you are.
Listing Three Calc 881.asm =< CALC B8I.ASM >== Please allow four to six weeks for processing.
Copyright (C) 1989 by PiM Publications fi Read Predmore All Rights Reserved 28 March 19B9 9 15:28 ?define jul:a_set oxoooi HANDEL SET 0x0002 ?define /*„a=aB;5S5======i void calc 881(xmin, dx, cx_in, cy_in, Y_in, z2max, mand_flag, results, nax_iter, nx min, nx max) double xmin, dx, cx in, cy_in, y_in, z2max; f 14 'calcdble.c' 854542835
* *l .3 public _calc_881 __calc_881: link a5,#.2 movem.1 .4,-
(spl unsigned char mand_flag; unsigned short "results, max
iter, nx_min, nx max; { register unsigned short num_iter, nx;
double zx, zy, z2, zy2; =< CALC 881 >= zx ecu fp2 zy equ fp3 cx
equ fp4 cy ecu fp5 2 2 max equ fp6 z2 equ fp7 SETUP 881 Setup
for MC68881 math if { (mand_£lag=-=MANDEL_SE7) ]]
(mand_flag“-JULIA_SET))
* ***“; for(nx=nx_min; nx<nx_max; nx*+) cmp.b #2,57(35) bea . 6
cmp.b #l,57(g5) bne . 5 64 (a5) ,d5 move.w move z2max to z2max
register in KC68BB1 move.l 48(a5),dO move.l 52(a5),dl MANDEL
SET) dO,-40(a5) dl,-36 <a5) 40 (a5),“48(a5) 44 (a5), -44 (a5)
move, j, move.1 move.1 move.I ,-Variable '881 register zy2 equ
fpl
- cy -48 "d" PROCDOD ItoFPN fr
- cx -40 "d"
- zy2 -32 "d" bra .10
- z2 -24 nx_^loop
- zy -16 "d" ; “ {
- zx -8 "d" A; if (rnand
- nx d5 "I" A; { cx =
- num_iter d4 "1" cmp. B ? 2, 57(a5) — xmin 8 "d" bne ,11 — dx 16
“d” move.1 #0,d0
- - cx_i n 24 ”d" move.w d5,dC — cy_in 32 "d" jsr .Pflt#
- - y_in 40 *d" move.1 16(a5),d2
- - z2max 48 "d" move.1 20 (a5), d3 — mand_flag 57 "C" jsr .Pmul#
- - results 58 ”tr move.1 B (a5),d2 — max_iter 62 "1" move.1
12(a5)ra3
- - nx_min 64 "I" jsr .Padd#
- - nx max 66 “I" PROCDODltoFPN fmove,cx cy ^ y_in; move.1 40
(a5),dO move.1 44 (a5),dl PROCDODltoFPN fmove, cy zx = cx in;
Volume 4 Number 5 Amazing Features The Business of Video by
Steve Glllmor Get started in the video business.
An Amiga Adventure by Larry White The globetrotting Amiga in Cologne, Germany.
Uninterruptible Power Supply (UPS), Part I by Steve Bender Voltage spikes, surges, power failures-1 Are they uncommon?
Amazing Programming The Amazing Audio Digitizer by Andre Theberge Quality Amiga audio for less—building your own stereo digitizer.
A MIDI Out interface by Br. Seraphim Winslow Helpful tips for happy jamming.
Digitized Sounds in Modula-2 by ten A. White Produce impressive sound effects with sampled sounds.
Sync Tips by Oran J. Sands The secrets hidden beneath the flicker mode.
On the Crafting of Programs by David J. Hankins See how Lattice C 5.02 measures up.
Insta Sound In AmigaBASIC by Greg Slringfettow The sounds you want for your program—in an instant!
Who are you, Mr, Guru? By David Martin David exposes this Amiga deviant for what he really is.
Amazing Reviews Gold Disk's Professional Draw by R. Shamms Mortier The latest in professional drawing tools from Gold Disk.
Electronic Arts’ DeluxePaint III by David Duberman Dpaint’s paintbrush grows feet—combines paint with animation.
Aegis's Audio-Master II by Phi! Saunders ; Aegis’s newest rendition of sound sampling & editing is reviewed.
New Wave Software's Dynamic Studio by Chuck Raudonis New Wave’s on a roli with this follow-up to Dynamic Drums.
Dr. T’s MIDI Recording Studio by Tim Mohansingb A high-performance, low-budget remedy for your MID! Ills.
Snapshot by R. Brad Andrews Alien Syndrome and Tetris are among the new Amiga games.
Amazing Columns New Products and Other Neat Stuff by Michael Creeden Central Coast Software calls huddle over phony Qback 3-0, daVinci meets Disney with Dpaint ill, Blue Ribbon Bakery serves up organization, plus more.
Bug Bytes by John Steiner VirusX 3.3 an evil twin, some bickering from Nag Plus 3-0, plus.
Roomers by the Bandito The Bandito stalks AmiEXPO NY, Atari/Nintendo lawsuit expands, and the Beaties get a little help from their lawyers, PD Serendipity by C. W. Platte
C. W. covers Fred Fish from 189-200.
C Notes from the C Group by Stephen Kemp Formatted output functions.
Index of Amazing Advertisers Discover something interesting?
Need more information?
Use the Reader Sendee Card in every issue of AC to contact those advertisers who have sparked your interest.
Advertisers want to hear from you. This is the best way they have of determining the Amiga community's interests and needs. Take a moment and contact the companies with products you want to know more about. And, if you wish to contact an Amazing Advertiser directly, please tell them you saw their advertisement in Amazing Computing.
Advertiser Page Reader Service Number ACDA 85 185 Amazing Computer Systems 20 120 AMI EXPO 47 147 Antic Publishing 30 130 AROCK Computer Software 67 167 B & B Computers 69 169 Celestial Systems 34 121 Checkpoint Technology 79 179 Creative Focus 84 184 D-Five Associates 82 182 Delphi Noetic Systems 62 162 Delta Research 32 201 Design Lib 75 175 Digital Dynamics 61 161 E Z Soft 4 104 Erich Stein and Associates 66 166 Flexible Data Systems 105 187 Gramma Software 34 221 Lattice 9 109 Micro Systems Software CII 102 Micro Systems Software 7 107 Micro Way 17 117 Micro Momentum, Inc. 70 170
Microbotics 11 111 Microbotics 33 133 Moonlight Development 34 222 New Tek CIV 103 One Byte 55 155 Photographies Canada, Inc. 39 139 Poor Person Software 48 148 Practical Solutions 53 153 Prespect Technics inc. 43 140 Rainbow’s Edge Productions 60 160 Sedona Software 22 122 Soft Disk Publishing 29 129 Software Advantage Consulting Corp. 21 134 Software Terminal 46 146 The Bit Bucket Computer Store 77 177 The Memory Location 38 138 The Pictu rebox 39 239 The Right Answers Group 13 113 Virtual Reality Laboratories, Inc. 81 181 Visionary Design Technology 1 101 move.l 2*5 (a5),-8 la5> move.1 28
(a5),-4(a5> move.l 24(a5),d0 move.l 28(a5),di PROCDODltoFPN fmove, zx zy « cy_in; move.1 32(a5),dO move.1 36la5),dl pROCDODltorPH fmove,zy ) i 6 (a5) 12 (aS) 32 <a5>,- 36 (a5), move.1 move.1 if(rcand_flag ns JULIA_SETJ { cx = cx_in; cmp.b §lr57 (a51 bne .12 nove.l 24(a5),d0 ; nove.l 24 (a5),- nove.l 28(a5),dl ; move.! 26(a5)r- PROCDODltoFPN fmove,cx cy = cy_in; move.l 32(a5),d0 : move.l 32(a5), nove.l 36(a5),dl ; move.l 26 (a5),- PROCDODltoFPN fnove,ey zx = xmin + rtx-dx; move.l fO,dQ move.v d5,d0 jsr .Pfltl move.1 16(a5),d2 move.l 20(a5),d3 jsr .Pmul# move.1 8(a5),d2 move.i 12{a5), d3 jsr
.Fadd?
; move.l dO,-B(a5) PROCDODltoFPN fmoveizx ? Move.l dl,-4(aS| zy = y_in; ¦40 (a5) ¦36 (a5!
48 (a5) 44(a5) C3EE08 Wsffl S Amazing Computing™ cannot determine the dependabil¬ ity of advertisers from their advertisements alone. We need your feedback, If you have a problem with an advertiser In AC™, please send a complete description of the incident, in writing to: Ad Complaints PiM Publications, Inc. Amazing Computing
P. O. Box 869 Fall River, MA 02722 Be sure lo include any
correspondence you have had with the advertiser, along with
the names of the individuals In¬ volved. Your assistance is
greatly cppreclated.
Move.l 40 (a 5 >,-16 (a5) move.l 44(a5>,-12(a5) move.l 4Q(a5),cQ move.l 44(a5),dl PROCDODltoFPN fmove,zy for (oum_itera0; num_iter<max_itcr; num_iterT+) <0, d4 ,16 .12 move.1 bra iter_loop 1 zy2 = zy'zy;
- 16 (a5), d2
- 12 (a5), d3
- 16(a5),dQ
- 12 <a5),dl
• Pmul# dO, -32 (aS) dl, -28 <a5) move.1 move.1 move.1 move.1 jsr
move.1 fmove,zy, z*/2 fnui,zy,zy2 REGREG REGREG REGREG
fadd,zy,zy ; jsr .Paddf ,* move. 1 dO,-I6(a5) ; move -1 dl,-12
(a5) zy cy; ; move.1
- 48(a5),d2 ; move.1
- 44 (a5),d3 ; move,1
- 16 (aS), dO ; move,1
- 12(a5),dl REGREG fadd,cy,zy ; jsr .Fadd# ; move.1 a0,-16 U5} ;
move.1 dl,-12(a5} za * zx'zx - zy*zy + zx? */ zx -= 2y2?
; move.1
- 32(a5),d2 ; move.1
- 28 ta5l,d3 ; move.I
- 8<a5),d0 ; move,1
- 4<a5>,dl REGREG fsub,zy2,zx ; jsr .Fsubi ; move. 1 d0,-8(a5) ;
move.i dl,-4<a5l zx +« cx; ; move.1
- 40 (a5|,d2 j move.i
- 36 (a5),d3 ; move.1
- 8(a5),dO ; move.1
- 4(aS) , dl REGREG fadd,cx, zx ; jsr .Paddl ; move.I d0,-8 <a5)
; move.1 } dl,-4(a 5 J add < w f 1, d4 cmp. W 62 (a5),d4 bcs
iter_loop
- 8 <a5>,d2
- 4(a5),d3
- 16(a5),dO
- 12(a5),dl .Pmul# dO #-16 (a5) dlf-12 ta5) move.1 move.1 move.1
move.1 jsr move.1 move.1 fmul, 2.x, zy
- S(a5>,d2
- 4(a5), d3
- 8 <aS),d0
- 4(a5),dl .Pmul# dO,-8 <aS) dl,-4 (a5) move.1 move.1 move,1
move.1 jsr move.1 move.1 fmul,:
- 32 (a5) ,d2
- 28 (a5),d3
- 8(a5),dO
- 4 (a5) ,dl .Paddf dO,-24 (a5) dl,-20{aSJ move,1 move,1 move
move jsr move move fmove,zx,22 fadd,zy2,z2 REGREG REGREG '(z2
>=* z2max) break; 48 (a5),d2 52 (a5) ,d3
- 24 (a5) , dO
- 20U5) ,dl . Pcmp# set_result *7 move.1 move.1 move,1 move.1 jsr
bge REGREG F3CC.S fcmp,z2max,z2 , ge,set_result zy = 2,*zx*zy
zy +« zy; move.1 move.1 move.1 move.1
- 16(a5),d2
- 12(a5),d3
- 16(a5),dO
- 12U5) , dl
* move.I move.w asl .1 move.1 move.w i ?include ?include ?include
?include ?include ?include ?include add. V results[nx] - nuit_
? 0,dQ dr, dO #1, dO 56(a5),aO d4, (aO, dQ.l*
* l,d5 <exec/exec.h> cintuition/intuition.h> <graphics/gfxbase.h>
<functions.h> <math,h> <stdio.h> <time,h> /* Resource Flags ¦/
66 la51,d5 cmp. V fees ?define ?define #de fine ?define #de
fine ?define ?define ?define ?define ?define ?define ?define
?define F_INrui7ION F_GRA?KICS F_LAYERS3ASE F_MATKTRAN$
F_COMSOLE F_SCREEN FjrJINDOWO F~WINDOWl F_ICON r_GRF_OBJ
F_HEKuSTRIP F_RAS7ER F SUPERSITMA?
OxOQDOGIL 0x0030021 Ox003004L OxOOOOOBL 0x00001OL 0x000Q20L Qx000040L Qx000080L 0x0001OOL 0x0002001 0x0004001 OxOOOSOOL 0x0010001 ; \ .5 '. 17 SHUTDOWNS El movem.1 (sp)+ ,,4 unlk a5 rts .2 equ -4 6 .4 reg d4/d5 .3 ? 52 I
- _calc_831 * M{v" public .begin dseg public _MC688B1_BASE end
?define SCRN_KEIGKT 200 ?define SCRN_WIDTH 640 ?define
SCRN_DEPTH A f* SuperBitMap parameters, ?define SBMJiEIGHT 200L
?define SBMJflDTH 540L /¦ Ids for scroll gadgets, ?define
HORIZ_SCROLL 0x0001 ?define VER7_SCR0LL 0x0002 struct Bitmap '
create_bitmapo struct Screen * create_screen(J struct Window *
create window 0 Listing Four Plot results.c void freeO,
*raallocO; void calc_dble{J, calc_BBl()# close_bitmap<),
Listing Six Mandsubs.c »< PLOT RESULTS.C >«
- Copyright (C) 1989 plot result SO, scroll_S3K() , test_B81 f) ,
by PiM Publications & Read Predmore up date_scro il_gadgets 0;
* All Rights Reserved
- 25 March 1989 0 20:04 ?ifndef MAIW_MOD1 JLE */ extern U3Y7E
screen_titie(], window_titleO[], window_titlel[J; ?include
"mandel.h" extern int Gargc; extern long cur_resource; ¦
sneer--=ss*nn» • / extern struct BitMap 'pSBM; void extern
struct Gadget Horiz_gadget, Vert_gadget; plot_results (pvind,
results, sax iter, r.x .Tin, nx max, ny) extern struct Gfx3ase
*Gfx3ase; struct Window *pwind; extern struct Image
Horiz^image, Vert_Ioage; unsigned short 'results, max iter, nx
min, nxjnax, ny; extern struct IntuitionBase "IntuitionSase; (
extern struct LayersBase "LayersBase; register unsigned short
i, nx; extern struct Proplnfo Horiz_prop, Vert firop; long
pen_color; extern struct Screen 'pscreenO; unsigned short
ncolors; extern ?endif struct Window •pwindowO; /• Subtract 2
since colors 0 and 1 are not used except for results(j 13 max
iter when the color is zero. ¦/ ncolors = (1 <<
pwind~>RPort->BitMap->Depth> - 2; for(nx=nx min; nx<nx max;
nx++j {
- < MANDSUBS.C >** i ¦ results[nx]; if{i==raax_iter) pen_colcr ¦
0L; else { pen color » i % ncolors Copyright (C) 1985 by PiM
Publications & Read Predmore All Rights Reserved 26 March I9S5
3 13:19 2L; print ff Pin %s, results [%d]*=%d, pen_color
<%2d,%2d) «%ld\n", FILE , nx, results[nx], nx, ny, pen_color);
*/ } SetA?en(pwind->R?ort, per._color) ;
Write?ixel(pwind->R?ort, (long) nx, (long) ny); ?include
"mandel.h" /•aB^a.at.anzsasss^ CLOS E_B ITKAP = = void
elcse_bitmap(pbitmap) struct BitMap "pbitmap; Listing Five
Mandel.h «< MANDEL.H Copyright (C> 1989 by PiM Publications &
Read Predmore All Rights Reserved unsigned char "piar.epo
Inter; unsigned long depth,width,height?
Short i; if( pbitmap != 0L) I depth = pbitmap->Depth; width = B ’ (pbitmap->Bytes?erRow); height^ pbitmap->Rows; for (i»0; Kctepth; i++) ( pianepcinter = pbitmap->?lanes|1]; if (planepointer !» 0L) FreeRaster (planepoir.ter, width, height) ; I FreeKem(pbitmap, (long) (sizeof (struct BitMap))) ; ' struct BitMap * create_bitniap (width, height, depth) unsigned long width,height,depth; ( short i, error_flag » FALSE; struct BitMap “pbitmap; unsigned char “pianepointer; unsigned long bitnapsize; pbitmap = OL; if( (depth>0L) £.£ (width>0L) ss (heighoQL) ) ( bitmapsize = sizeof (struct BitMap);
pbitmap = (struct BitMap *) AllocMem(bitmapsize, MEMF_CHIP); if( pbitmap != OL) { InitBitMap(pbitmap, depth,width,height); for<i=0; i<depth; i++l pbitmap“>Planes[i]=(unsigned char ’} OL; for(i=0; i<depth £6 !error_flag; i++) { pianepointer = AllocRaster(width, height)j if( pianepointer ) pbitmap->Flanes[i] c pianepointer; else error_flag = TRUE; \ ) ) /* End of if (depth, etc.). */ if(error_flag TRUE) ( close_bitmap(pbitmap) ; pbitmap = OL; ) return(pbitmap); J /*===================< CREATE_SCREEN >=================== struct Screen * ereate_screen(topedge,width,height, depth, colorO,colorl,
mcde,name I short topedge,width,height,depth; unsigned char colorO,colorl; char * name; unsigned short mode?
/* Mode options are HIRES, INTERLACE, SPRITES and HAM which are defined in INCLUDE/GRAPHICS/view.h. '/ ===< CREATE BITMAP >==«==«== === === ====•/ Become an AMIGA Tiger T Subscribe To ¦ ¦® .¦$$$; ; v'': •?'<.: out order form near page TT :: bTr;- ^N\Cy r_ __ NewScreen ns; Screen “pscreen; = 0; 14 topedge; = width; = height; = depth; = colorO; = colorl; = mode;
- CUSTOMSCREEN; = NULL; = (UBXTE •) name; = NULL; struct struct
ns.LeftEdge ns.TopEdge ns.width ns.Height ns .Depth
ns.DetailPen ns.31ock?en ns.ViewModes ns.Type ns.Font
ns,DefaultTitle ns.Gadgets ns.Custorr.BitMap = NULL; pscreen =
OpenScreen(ins); return(pscreen); if(flags £ SU?ER_BI?MAP)
nw,BitMap * psbm; else nw.BitMap = NULL; nw.MinWidth =
pscreen->Width/4; nw.MinHeight = pscreen->Height/4; nw. Max
Width = pscreen->width; nw.MaxHeight a pscreen->Heichc; pwi
ndow = OpenWi ndow{£ nw); return (pwir.dow) ; )
/*stieaaeiiBdatiasasii8&si< CREATE WINDOW /I'lBaaasaaaaB&bi
struct Window * create_window(leftedge,topedge,width, height,
colorO,c flags,IDCKPflags, pFirstGadget, window pscreen, psbm)
short leftedge,topedge,width,height; olor1, title, unsigned
char colorO, colorl unsigned long flags,IDCMPflags; struct
Gadget "pFirstGadget; unsigned char *window_title; struct
Screen "pscreen; struct BitMap “psbm; { struct NewWlndow nw;
struct Window “pwindow; nw.LeftEdge nw.TopEdge nw.Width
nw.Height nw.DetailPen nw.BlockPen nw.Flags nw,IDCMPFlags
nw.Type leftedge; topedge; width; height colorO; colorl; flags;
IDCMPflags ; CUSTOMSCREEN; pFirstGadget; wlndow_citle; NULL;
oscreen; nw.FirstGadcet nw.Title nw.CheckKark nw.Screen Open
AMIGA libraries, screen and windows.
* / void initialize() { unsigned char colorO, colorl; unsigned
long flags, IDCMPflags; unsigned short viewmode; GfxBase =
(struct GfxBase *) OpenLibrary ("graphics. Library", OL) ,* if
(GfxBase == NULL) myabort("Can't open graphics.library") ;
cur_resource |= F_GRAPHICS; IntuitionBase = (struct
IntuitionBase *) OpenLibrary("intuition.library", OL); if
(IntuitionBase == NULL) myabort("Can't open
intuition.library"); cur resource I** F INTUITION; LayersBase -
(struct LayersBase *) QpenLibrary("layers.library", OL) ; if
(LayersBase == NULL) myabort("Can't open layers * library");
Cur_resource |- F_LA YERSBAS£; strcpy(screen_title, Turbo
Mandelbrot (68881) Copyright 1989 by Read Predmore"); colorO -
C; colorl - 1; viewmode * HIRES; pscreenO * create_screen(0,
SCRN_KIDTH, SCRN_HEIGHT, SCRN_DEPTK, colorO, colorl, viewmode,
screen_title); if(pscreer.O == NULL) myabort("Could not open
the screen !"); cur_resource |= F_SCR£EN;
ScreenToBack(pscreenO); initcolorjnap(pscreenO); pSBM =
create_bitmap(S3M_WIDTH, SSM_HEIGHT, (long) SCRNJJEPTH]; i
f(pSBM == NULL) myabort(“Could not cpen the Super BitMap !");
cur_resource 1= F_SUPER2ITMAP; Horiz_prop.Flags - AUTOKNOB I
FREEHORIZ; Horiz_prop.Horiz3ody H OxlFFF; Horiz_prop.Horiz?ot -
0x8000; Vert_prop.Flags - AUTOKNOB | FREEVER7;
Vert_prop.VertBody = OxlFFF; Vert_prop.VertPot = 0x8000; flags
«> WINDOWS I ZING I WINDOWDRAG I WINDOWDEPTH | WINDOKCLOSE |
SUPER_BITMAP I GIMMEZEROZERO; IDCMPflags = MOUSEMOVE \
GADGETDOWN I GADGETU? I CLOSEWINDOK I NEWSIZE /* I SIZEVERIFY
*/ strcpy{window^_titleQ, " SuperBitMap Window ”); pwindowO a
create_window(0,11, SCPU_WIDTH, SCRN_HEIGHT-11, colorO,colorl,
flags,iDCMPflags, (struct Gadget •)4Vert_gadget, window_titleO,
pscreenO, pSBM); if(pwindowO =s NULL) myabort("Could not open
the window !"); cur_resource 1= F_WINDOKO;
SetRast(pvindowQ->RPort, 1L); update_scroll__gadgets (pwindowO,
4Horiz_prop, 4Vert_prop); ScreenToFront(pscreenO); } /*H = == =
= e = =E = === = = = = E== = < MYABORT > = = E = = = = = =
B~!=E = ^=:==:Ei=a3E = S
* Routine which closes windows and sereeens and frees up
* memory which has been allocated for RasterPorts, etc* •/ void
myabort(s) char *s; { if(cur_resource 4F_WINDOWC)
CloseWindow(pwindowO); if(cur_resource 4F_SUPERBI7MAP)
close^bitmap(pSBM) ; if(cur_resource 4F_SCREEN)
CloseScreen(pscreenO) ; if(cur_resource 4F_LAY£RSBASE)
CloseLibrary(LayersBase); if(Cur_resource 4F_GRAPHICS)
CloseLibrary(GfxBase); if(cur_resource 4F_INTUITIQN>
CloseLibrary(IntuitionBase); exit (0); 1 /.=»=«===============<
SCRQLL_SBM void scroll_SBM(pwind, horiz_prop, vert_prop, dxmax,
dymax, gadget_id) struct Window "pwind; struct Proplnfo
*horiz_prop, *vert_j?rop; long dxmax, dymax; USHORT gadget_id;
( long dx *=> 0, dy » 0; if(gadget_id 4 HORIZSCROLL) ( dx ¦
(dxmax * ((unsigned long) horiz prop->HorizPot)) / OxffffL; dx
= dx - pwind->WLayer->Scroll_J<; } if(gadget_id 4 VERT_SCROLL)
( dy » (dymax • ((unsigned long) vert_prop->VertPot)) /
OxffffL; dy « dy - pwind~>WLayer~>Scroll_Y; ) if( (dx != OL) tl
(dy !=0D) ScroilLayer(pwind->WLayer->LayerInfo, pwind->WLayer,
dx, dy); ) /-================< U?DATE_5CROLL_GADGE7S
>===============»/ void updace_scroli_gadgets(pwind,
horiz_prop, vert_prop) struct Window "pwind; struct Proplnfo
*horiz_prop,"vert_prop; ( horiz_prop”>Horiz3ody = (Oxffff *
({unsigned long) pwind->GZZWidth)) / (8 ¦
pwind->KLayer->Super3itMap->3ytes?erRow); vert_prop->VertBody =
(Oxffff ’ ((unsigned long) pwind->GZZHeight)) /
pwind->WLayer->SuperBitMap->Rcws;
RefreshGadgets(pwind->FirstGadget, pwind, 0L); ) /*s= =
::=s::e::33:ss:3e:s3( FINI = * f Listing Seven Makefile #
Makefile to build Mandel 881 # using Aztec C V3.6a for f # by
Read Predmore, 1 27 March 1989 3 16:13 the AMIGA, * CFLAGS*
+Imand_h -n +FI OBJS_881 = mand_63l.o mandsubs.o plot_results.o
\ calc_dble.o calc_881.o INCL = mandel.h nand_globals .h
Mandel_881: S{OBJS_381) mand_h In -g -o Handel_8Sl S(OBJS_831)
-lot -1c mand_88i.o: mand_881.c mand_h cc S(CFLAGS) mand_881
.*C mandsubs.o: mandsubs.c mand h cc S(CFLAGS) mandsubs.c
ealc_dble.o: calcjdble.c cc S(CFLAGS) calc_dble.c
plot_results.o: plot_results.c mand_h CC S(CFLAGS)
plOt_results.c mand_h: mandel.h cc +Kmand_h -a -n -s mandel.h
calc_881.o: calc_88i.asm MC6883l.i as calc 881.asm
• AC* by Stephen Kemp, PUNK ID: SKEMP Notes p-OHt tit C (fpOui)
Avoiding Problems with variable types when passing values
between functions During the past year, I have covered the
basics of programming in C . I have tried to emphasize tire
importance of using the proper '‘type” variables when passing
parameters between functions. This month, I want to make that
point again, and discuss some ways you can avoid problems.
Assume you have a function that expects to receive a long integer as a parameter. If you accidentally call the function with a short integer, your program will not work properly. The terrible thing about a subtle error like this is that die failure may not occur immediately. And debugging an error like this can be a nightmare. Simple type mismatches have caused more than just erroneous program output. Sometimes they can cause far ¦worse problems, like a “locked up” machine or even a trashed hard disk, Now I’m not saying this to frighten you away from C. Remember, every programming language has
its share of potential hazards and pitfalls. As a programmer, it will be your responsibility to ensure the program's integrity. And depending on your choice of C compilers, there are a couple of “tools" available to help you.
The most obvious thing you can do to avoid problems like these is maintain a stack of current program listings. When uncertainties arise about the parameters a fdunction requires, just pull out die proper listing. Unfortunately, listings have some disadvantages. They are not always convenient to keep up¬ dated. You must make a place to keep diem orderly; and most programs rely heavily upon library functions for which you will not have die source.
The next alternative—one I use on most occasions—is to maintain a simple list containing die function’s parameters and “return” types. I like to keep the list sorted alphabetically, or divided into logical groups (i.e., string functions, memory functions, disk functions, etc.) Printed out and posted on a wall nearby, a single list is much handier than a complete set of listings.
Whether you keep listings or a function list, diere will be times when a function must be called with a parameter that does not quite match the type die funcdon requires. If you find yourself in one of diese situations, there are a few things you can do. One is to alter the function, perhaps by adding anodier variable of the proper type, and calling the function with the proper parameter type. A second, and usually better, option is to use “casting”.
Casting Casting is a means of overriding a variable's declared type by indicating die desired variable type in parendiesis prior to die variable's label in a statement. All C compilers should support casting (I have not found one drat doesn’t). The example involving the use of a short variable in a long parame¬ ter’s place can be repaired widi a simple cast operation. Here is a little code to demonstrate.
FunctiGn^a() { short var; function_b{ (long) var ); /* call to function with long */ Although this may seem like an odd example, it is not that uncommon. The function (function_a) has a variable declared as a short. Assume function_b expects a parameter of type “long".
Since shorts and longs are different sizes, die cast is needed so the correct number of bytes will be passed to die function. The compiler actually promotes the variable to the desired type prior to pushing the parameter on the stack. The cast only operates on the next logical item occurring in the statement after it is declared. (Note: When dealing with "signed” values, the compiler will promote the sign also.)
Casting works just as well with non-integer types. It can he especially handy when using pointers. Many compilers will recognize (and issue warnings) when pointer types are “mixed".
Although some warning messages emitted from compilers are generated in harmless situations, I believe a good programmer wall make every effort to make programs that are error and warning-free.
The following example show-s two types of pointers, and demonstrates how to cast them in statements. Assume the function is designed to examine the individual bytes (chars) of a long variable which is pointed at by die other pointer.
Char *cptr?
Long *lptr; /* character pointer *7 /* long oointer */ cptr - (char *) lptr; /* set the char ooint */ /* code to examine and perhaps change the pointer*/ lptr = (long *} cptr; /* set the long pointer */ The trouble with casting is that you must remember to do it. If you forget, you might not get a message from the compiler, but the program could fail miserably. Fortunately, many compilers now' support a feature to aid in the fight for an error- free program. This feature is called prototyping., and it is similar to casting, but goes a large step further. When you provide the compiler with a
prototype for a function, the compiler examines each reference to die prototyped item to ensure proper use. This can be an invaluable feature, and 1 highly recommend you ask about it when purchasing a C compiler. A function prototype looks similar to a function declaration, but merely serves as a definition. Consider this example: char * function zI long x, long *y ); /* prototype for function*/ This definition tells the compiler exacdy what type of parameters function_z expects, 2nd what type of value it will return. Looking back at the list of functions I recommended, you can see that it is
actually a list of function prototypes.
Tailored to meet die requirements of a given compiler dial supports prototyping, a prototype “file” wall catch/prevent many potential programming errors. Referring back to the prototype of function_z, if the compiler ran across die following code, for example, it would emit a number ofwamings/eirors.
Functiorw () [ short var; char string(sizeof(long)J; }' a char array to hold a long */ long *lptr; /* assume var is assigned some value lptr = function z( var, string); /* call the function */ Again, this is not something you should do on a regular basis, but the unorthodox is occasionally necessary. Corrected with casting, the statement looks like this: lptr = (long *) function_zt (longl var, (long *i soring): Prototyping can prevent many disasters. If your C com¬ piler does not support it, don’t despair just yet. A separate program, usually called “lint”, can examine your program’s code with
the same strong type-checking provided by prototyping. I am not sure why it's called lint (unless it is analogous to the lint trap in a washer or dryer), but a good lint program can be a lifesaver. If your package does not support prototyping, check into a good lint program. Most compilers don’t come with a lint program, so you will have to purchase one separately. You should be able to find a lint program in a good software store or mail-order ad, but to avoid any compatibility problems, be sure to get one which explicitly states that it supports vour C compiler.
As I have stated, lint has the same capabilities as prototyp¬ ing. Unlike prototyping, lint must be run separately over your program modules. It will emit the same type errors and warm¬ ings as a prototyping compiler. If you redirect the output to the printer or a disk file, you can then use the output as a reference when fixing the problem areas.
Programming without problems is a tough task. Fortu¬ nately, we have not been thrown to the lions without weapons.
Incorporating the suggestions outlined here will not guarantee you bug-free programs, but the chances for success are certainly improved. If you are unsure w'hether your compiler supports some of the operations I have discussed, dust off tire manual and find out. If it does, start experimenting.
• AC- Amiga Video: 90%Preparation Prepare your video for
summertime fun by Otto Focus (As a special feature this month,
AC is providing the insights of a rather obscure and
uticotiventional video hobbyist. Due to his unorthodox manner
and style, he has permitted the use of this article with a
pseudonym only. We can only offer the following information on
this character: He practices what he preaches-sometimes.
Even though the author is a slight off the mark, his comments on video vacationing and video preparedness are timely. The Summer is an excellent time to do more with your video equipment.
Summer vacations create the perfect opportunity to travel and record new sights and sounds.
We Amiga users want to use our Amigos to produce well edited videos which we will proudly show our friends and relatives. (It's only fair, we’ve seen their slides.) In light of this opportunity, AC will do a special video supplement in our August issue. We offer this article as a means to prepare your tapes before the editing process. ED.] BE PREPARED!
When I was a boy scout, the one thing the scout leaders drilled into our heads was “Be Prepared." This is a lesson I have brought into my adult life with extreme enthusiasm. I am never able to pack a single bag for a trip even if just for two days. I am constantly “stocking up” on everything from shampoo Lo batteries. If I am driving any distance, I store tools, radios, blankets, water, medicines, books, tapes, and just about any other thing that will fit into my car until it looks as if I am packing for the Santa Fe Trail. In short, I don’t want to be caught short.
You may wonder what this has to do with Video. Everything! I sincerely believe that programming, photography, and video all share the same basic three principles: know your tools, be prepared, and “garbage in garbage out.” Know Your Tools Your first line of preparation is to know what equipment you have, what your equipment is capable of doing, and how to use each piece. It is never a good idea to begin a serious project without at least being familiar with your equipment.
Before a serious recording effort, conduct a practice recording session around your home and neighborhood. (If your neighbors begin giving you funny looks, tell them you're looking for UFO’s.
They will probably drink you’re a little strange, but drey won't know about your computer habits.)
Since you are reading a video article in Amazing Computing, it is safe to assume you will eventually want to use tire Amiga to edit and postproduce your video. Practicing with diis test tape will give you a sense of accomplishment as well as competence with your equipment. These tests will also prepare your judgement in what to shoot and how to shoot it.
You should attempt to attain a strong sense of how each piece of Amiga equipment you plan to use will fit into your final production. Remember, we are not trying to take the spontaneity out of your work, but to arm your creative side with all tire available information you may require. This will give you the tools you ¦will need to make those quantum leaps of imagination and create a video worthy of your time and effort.
Since each video camera tends to be unique in its features, it is best to consult your manual and any other material you have been able to collect on your equipment. Be aware of tire lighting requirements, tape sizes, battery life, handling requirements and odrer necessities of your equipment. Are special adaptors required for use with alternating current, how long does a battery take to recharge, what actually makes the auto focus work and does it?
These are the questions that once answered, give you a strong competent feeling that you will get the results you want.
A Video of What?
Once you know how your video equipment works, you should decide what to shoot. The purpose of this article in a Summer issue of Amazing Computing is to catch all tire Amiga videophiles, with camcorders in hand as they prepare for their vacations. To obtain the desired result, you must first decide what you want. Even a vacation video can be much more entertaining if you prepare your thoughts in advance.
By anticipating what you will be recording, you will have a better understanding of which piece of equipment you should bring. This will make your “on location shooting" easier if you are not concerned with an enormous amount of clutter.
Always anticipate the problems a certain area may give you. Will you need long periods of time on battery power?
Will you be in low light situations? Will the environment be a hazard to your equipment? Will your current case be helpful and protective, or just hard to manage.
Let's assume you're headed for tire woods, an amusement park, a classical performance outside, a museum, the beach, Aunt Milley's, the drag races, dog showy steam train rides, or wherever.
Most of the fun with the new camcorders is that you are not tied to an electrical outlet and, unlike die old 3 minute movie films, you can obtain over two hours of recording time on one tape, provided you have enough battery7 life.
Batten7 life is one of the easiest problems to solve. Unfortunately, all you need is money. Most of the higher priced cameras come with replaceable batteries.
These units can be purchased for around .00. How'ever, they can provide more than 2 hours of recording time while taking approximately the same amount of time to recharge (individual products will vary, please check your equipment's requirements). When you add up the cost of your current Video equipment and die cost of your vacation, you may decide not to go on your trip, or you may decide diat a few dollars more for diat extra battery life w7ili mean hours more of freedom and entertainment.
Most cameras make the batteries extremely easy to change. Tills means you will not lose a lot of time and can continue die fun immediately. Besides, diere is nothing like the dirill of pulling a tired battery from your camera and snapping a new charge into its place. It is a combination of being an evening news reporter and Rambo.
Obviously, if you expect to record in a low7 light setting, make sure your camera can produce clear shots. The newer full feature cameras have excellent low light ability, however some genlocks and frame grabbers have difficulty producing a good duplicate of die original.
This is where knowing your equipment truly comes into play. By testing your equipment beforehand, you will have a better sense of w7hat you will be able to do and what will fail. And you'll save severe frustrations later.
Weathering the elements The next two questions are closely related, environmental factors and your case. Your case should protect your camera and assorted equipment from the hazards of the location, sun, w7ater, sand, heat, etc. Your case should be big enough to hold your required accessories (alone or augmented by an equally protective sister case). The case should also be capable of traveling w'here you need to go. If you are traveling on a commercial airline, be aware of the restrictions of carry on luggage. Most airlines in the US allow you to have two carry on bags.
Each bag must fit under tire seat in front of you, or in an overhead compartment.
I suggest you store die case in die space under the seat in front of you. The idea that sometime during the flight, the overhead compartment will open and your camera will drop on a fellow passenger’s head is too much. I have found that a good duffle bag fits in this area and makes an excellent case.
Your duffle bag/camera case can be “lined” inside with extra video tapes, batteries, etc. and still leave room for a tape player, tapes, a book and your favorite computer magazine, Amazing Computing. (I warned you I tend to overpack.) Everything will fit neatly in the bag, but beware, it may become extremely heavy.
Your last consideration for equipment should be all the things you need to do your job better. A lens cleaner and air brush to keep your camera clean. Good tapes will not only make you pictures better, but it will also preserve the heads in your camera and the cost is generally just a few dollars more.
A tripod is a definite consideration.
Depending on where you are shooting a tripod can be a help or a bother. While it is difficult to use a tripod on a roller coaster, it is equally unnerving to watch an unsteady camera image caused by the shaking hands of a weekend camera operator. If you intend to add computer graphics to the video, the resulting image can create far more severe effects than a roller coaster ride.
A tripod will anchor your camera for those long smooth shots used in your credits and other special effects. It also makes it possible to switch from camera operator to fellow performer and allow you to have fun with the rest of the family.
Think ofTfje Final Effect Always remain in touch with your final product. Keep in mind how you will eventually use the shots you are taking. Be aware of the different possibilities you have and judge which shots would make these ideas and your final product more interesting.
Take your time. With most recorders, each tape provides between one to two hours of recording time. If you take enough footage, you will have a wealth of material to choose during the editing process. Try not to record quick, short shots. Use the recorder in longer periods and then edit scenes together for a more fluid look. This is especially time if you want to add a title or credits to your video.
Record a long section of that perfect beach scene, sunset, or mountain view to make a backdrop for your Amiga lettering. Remember to take more recordings than you need—a good editor wants far more material than he MUST use. This gives you a choice in the editing process.
Summary My comments are not meant to stifle your creative edge. I want you to have the opportunity to produce your best and you will only accomplish this if you know' what to do and how to do it.
Remember, your family will dutifully sit through your vacation video the first time, they wrant to see themselves and they will feel obligated to you. However, when they ask to see the tape again, they want a copy for their friends, or they ask you to record a special holiday or family event, you will know7 your work is w'ell appreciated.
• AC- HIGHER PERFORMANCE. ..ANDCHEAPER TO BOOT!
Fdata-10 Single 3.5-External Diive...................9.95 |~r\ _ ¦ nn (fcOQO QC ' Acousticaily Quiet • High Performance rUaia-ZU Dual 3.5" External Drive w/Power Supply ¦ Amiga* Color Coordinated ‘ Super Low Price yfix .EDA ?
LEXIBLE 10503 FOREST LANE- FAX: 214-669-0021 POLICY: Shipping and handling extra. Personal and company checks require 3 weoks to clear. For faster delivery, use your credil card or send cashier's check or bank money order. Crodit cards are not charged until wo ship. All prices are U.S.A. prices and are subjoct to chango, and all items are sub|ect to availability. Those prces reflect a 5% cash discount. For all crodit card purchases there will be an additional 5% charge. Defective softwaro wtll be replaced with the same item only. All sales are final and returned shipments are subject to a
restocking fee ATA Systems, inc. SUITE 148 • DALLAS, TX 75243 214-669-3999 Amiga* is a registered trademark of Commodore-Amiga, Inc. (VPS, continuedfrom page 86) second sample tried to cold boot the expanded Amiga computer system, but it was incapable of doing so. That it even attempted to do so, must have been part of the defect related to tiie sensing of its AC / battery condition.
This second sample otherwise functioned properly under both AC and battery backup conditions in the subsequent in-use tests. When ihe DRS unit goes to battery backup, if the battery is fully charged, all ten battery meter LEDs light up. This quickly drops off by one or two LEDs. The remaining green LEDs extinguish slowly, one at a time, as battery backup operation continues. I obtained a third UPS sample , and tested it with in-use timed tests. In operation, all three samples of the DRS-350 made fairly loud audible noises from their power transformers. This vibration could easily be felt by
touching the outer case.
This appeared to be normal for this design.
The company stated that the problems in the first two samples were the result of defective cable assemblies.
There were several units with less than perfect plug-in cables when our samples were sent out.—reportedly some 12-15 unit s before the cause of tire problem was identified. The third sample of tire DRS-350 tested had no defects at all.
DRS Power Products warns that a load must be plugged into the unit when it is turned on. To have the same test conditions, across all brands of UPS units, tire units were tested without a load—to simulate ail external equipment being off — during preliminary tum-on and charging conditions. Only one other brand, Kalglo, carried a warning not to operate it without a load.
The DRS-350 gets warm on the top middle of tire case during battery7 backup operation. It was fairly cool during battery7 recharging, even after full battery depletion. The DRS circuit uses a special high rate charge circuit so battery charging takes only 6-8 hours.
Unique to the DRS units, are the LED “ LOAD CENTER “ displays on the front panel. These 10 level bar graphs can provide extremely useful information on the actual AC load and battery7 condition. It’s one of the best features on any UPS. Units from other companies lack such an accurate method of estimating both AC load level and battery7 condition.
The rear panel of one DRS-350 also had a DB-25 connector. This connector was part of the “ Network Option ", consisting of two internal relays, and the DB-25 connector. This provides two separate signals, which can indicate both AC power failure, and imminent UPS shutdown to the file server on a computer network.
Originally, the DRS-350 didn't come with a manual, just a specification sheet containing some technical information, a one-page Quick Start Guide, a warranty card, and some information on what to do if the unit is physically damaged. It was not comprehensive. We recieved a 27-page User Manual befor tire tests were completed. The manual is informative and comprehensive, but repititious. The same information often appears two or three times in different sections. Most people would find its information to be quite adequate. There is a two year warranty period for the original owner.
The second sample of the DRS-350 UPS backed up the Amiga A-1000 / Thomson / equivalent expanded computer system for 36 minutes, 40 seconds; die third sample lasted 37 minutes, 48 seconds. Overall, tire unit is very impressive, if you get one that is fully functional. List Price: 3499-00 Unit is available discounted.
Summary THE DRS -350 UPS Positive attributes: AC load and battery condition bar graph displays, medium size, opdonal network option, 2 year warranty.
Negative attributes: Very7 deep aluminum case, no external batteiy jacks, no alarm turn-off switch, uses plastic encapsulated output devices, significant transformer hum on AC and more on battery backup, does not cold boot in absence of AC power, defects present in 2 of 3 samples tested.
{Look for more UPS reviews by Stephen L Bender in upcoming issues of AC—Ed.)
• AC- Sometimes three isn't a crowd.
Amazing on Disk Source Listings and Executables from the pages of Amazing Computing!
Only .00per disk (.00for Non-Subscribers) Amazing on Disk #1, #2 & #3 Amazing on Disk complete source listings from AC 3-8 and 3-9 Tumbling Tots: A game written in assembler (AC V3.8) Modula-2: FTP & IEEE math routines (AC V3.8). Gets in Multi-Fortb: Part I <5- // (AC V3.9). The Complete CAI Authoring System in AmigaBASIC (AC V3.9). and a few freely redistributable goodies like: B-Spread Menu Ed & Vgad' programming tools featured in “Tire Developing Amiga” (AC V3.8). Amazing on Disk #2 complete source listings from AC 4.4 GelArgs.MSB: Passing arguments to AmigaBASICfrom CU.
Shared Library Assembler Header: Use shared libraries, written in 'C.
MulliSort; Sorting and intertask communication in Modula-2.
'881 Math Part I: Part one on programming the 68881 Math Coprocessor Chip.
Amazing on Disk #3 complete source listings from AC 4.5 and 4.6 Digitized Sound: A Modula 2 program that plays sound files (AC V4.5). '881 Math Part II: Part two on programming the 68881. Shows how with fractal drawing program (AC Y'4.5). Ittsla Sound: Tapping the Amiga's sound from AmigaBASIC (AC V 4.5). MIDI Out: A MIDI drill program written in C that you can add features to (AC V4.5). At Your Request: A program that shows you how to access system requestors from AmigaBASIC (AC V 4.6). Diskless Compiler: See how you can set up a compiler enviroment that doesn't need floppies (AC V4.6).
(Order Form on inside rear cover) The AMICUS & Fred Fish Public Domain Software Library This software is collected from user groups and electronic bulletin boards around the nation. Each Amicus disk is nearly full, and is fully accessible from the Workbench. If source code is provided for any program, then the executable version is also present. This means that you don't need the C compiler to run these programs. An exception is granted for those programs only of use to people who own a C compiler.
The Fred Fish disk are collected by Mr. Fred Fish, a good and active friend of the Amiga.
Note: Each description line below may include something like ’S-O-E-D’, which stands tor 'source, object file, executable and documentation’. Any combinalian ot these letters indicates what forms ot the program are present. Basic programs are presented entirely in source code format.
AmSJMl Abasic programs: Graphics 3DSdids 3d soWs modeling prog. Wsampto data tiles Bto*s draws clocks Cubes draws cubes Dure* draws pictures in the style cl Durer F Scape draws fractal landscape s Hidden 3D drawing program, w hidden Ime removal Jpad simple pint program OpscaJ draw several optical ik&cns PartBox s«mpie pint program Shu tie draws toe Shuttle in 3d wireframe SpaceArt graphics demo Speake" speech uttty Sphere draws spheres SprjJ draws coor spris ThrwOw 3d funcccn picts Topography artificial topography Wheels draws crcte graphics Xenos draws fractal planer landscapes Abasic
programs: Toots AddressBook sim ple datetase program to accesses CarcFTe simple card fie database program Demo mutyfihdow demo KeyCobes shows kaycodes for a key you press Menu run many Abasc programs tram a menu MorrCotera way to get more colors on re screen at once, using aliasing shapes sample edcr shape desgner Speaka speech and narrator demo Abasic programs: Games BrickOu! Classic computer brick wall game Ctneilo also known as ’go1 Saucer smple shcol-en-up game Speling smple tafcng speling game ToyBo* selectable graphics demo Abasic programs: Sounds Entertainer plays that tune HAL9000
pretends irs a real computer Police smple polce sron sound SugarPlon plays "The Darca o! Na Sugarplum Faihes* C programs: Aterm simple terminal program, S-E cc aid to comptmg with Lattice C deevrst opposite of CONVERT (or cross developers DoCy source code to the-* by wnjpwdemo echo* una-styte Rename expanse.-, parval 5.0-0 fas arip eityars use ol lasi-featng pant ma!h FnBate txes future dates on a3 ties on atSsk.S E treedraw simple Wortbertoh drawing prog ,S-E GfxHem graph* memory usage ridroater. S -E AMCUS DisH Fites from We original Amiga Grep searches for a gven string m a tie wrti
Technical BBS docs.
Hen shews off We hoid-and-motify Note Wat some cf these tiles are od. And refer to ctoer vrersons cl meWodol coter generation We operating system, These Sies came from We Sun system wai eWZArtuga fast parallel caote transfers betw«n scrvedas Amiga technical support HQ lor most on5^. These an IBM and an Amiga tiles do not ca/ry a warranty, and are lor educatonal purposes Mandelbrot set program, S-E only. Ol ctwree. Wars not to say they donl wort.
More patterned graprtc demo, S-E objix makes Lattice C cbjea 9e syrobois Complete and nearly up-io-daie C source to image.ed1. an earfy
r. so’e to Wsck. S-E verson ol We ton Edtor. This isa iffle
flaky, but comptes and quick quick son ynngs routine rua.
Raw example sample window VO setace tuns on interface mode. S-E An tntution demo, in Ml C source. InOuctng ties: demomenu c. sparks qix-typegraphedemo. S-E OemomenuJc. Demoreq c, getasd c, idamoc. Idemo.gude. Other executable programs: tocmo .make, donoii h, nodos c, and txwntex SpoechToy speech demonstoation addmemo add external memory to We system WhichFont displays ail avaiabie fonts bobiest.c example ol BOB use Texts: console IO.c console 10 example 60020 dssaoes 66323 speedup board from CSA creaportc create and deteie ports Aliases explains uses ol the ASSIGN command creastfi-c create
standard 10 requests Bugs known bug is. In Lattice C 3.02 creatask_c creating task exam pies CUCard reference card tor AmigaDCS CLI dsto c example of rack read and write CllCommands guide to using We CLI dcdy.c source to We 'dotty wndcw’ demo Ccmmands shorter gutoe to AmtgaDOS dua'piay.c dual ptayfieU example CLI commands fiood.c hood til example EcCommands gude lo the ED ertilor treemap-c old version of treemap' Flenames Am^aDOS Rename widcaffl geitoolso tools tor Vsprites and BOBs corrrentons gfxmem.c grapfK memory usage riOcatcr HalfBnght expiare rare grapfics chtos wat can do heftu: window
ex£Tf»e from RKM more colors mputdev.c aoong an input tantfer n we input stream Modem Pins description of we serial port pinout foysttoc reading we joystick RAMdiks tips on setting up your RAM: dsk keytxd.c direct keyboard rearing RDMWxk tips on usmg ROMWatk layertesc layers examples Sounds exptanatiorcf tnstoumert demo sooxj mousportc test nouse port itetermai owntbc.
Soeed refutation cl Amiga's CPU and custom cfvp speed ownibJ3.ro example ol making yew own Ltrary win Lac.ce WackCmds tips on using Wack paraiesLc tess parallel port commands AMICUS PlSh 2 C programs: alto Am>gaDOS object Itorary manager, S-E ai text fdo archive program, S-E Ixobj auto-chops executable ties shell simple CLI shell, S-E sq.usq file compression programs. S-E YachtC a famaiar game. SE Make a smple ’make’ programming utilty, S-E Emacs aneariy version ol the Aniga text edtor, S-E-D Assembier programs: bsearchasn birwy search code gsortasm Unix eompacbe qsortO tencton. Source and C
test program setynp^sm setjmp() code lor Lattice 3.02 Svpnntf Unix system V compatible pmfl'J trees o Una compatible treei) fcnteon. Q-D (ThjdsktcrmertyhajirFspePicattor.Besandexampes. Sxe r«s spec is oonsiartty updated, the FF spec fres have wen moved to their cwn dsk in We AMICUS cotocboa) John Draper Amiga Tutorials; Anmate describes anrr,abort aJgonfflras Gadgets tutorial on gaogets Menus learn about Lujton menus AMICUS Disk 3 C programs: Xrel a C cross-reference gen.. S-E 6toitcolor extra-halt-bnght chp gfx demo. S-E Chop truncate [chop) tiles down a size, S-E Cleanup removes strange
characters from text ftes CR2LF converts carnage raims to line teees in Amiga files, S-E Enor adds com,pie errors to a C lie, S Hello window e x. from the RK M. S Kemut generic Hermit impiementaiion, flakey, no terminal mode, S-E Scales sound demo plays scales. S-E SkewS Ritok cube demo in h-res colors, S-E AmlgaBaslcProgs(dlr) Automata ceMar automata simulation CrazyEights card game Graph hxtoaon graphing programs WitotngHouf a game AbasIC programs: Casno games ol poker, blackjack. <5ce, and craps Gomoku a so known as o Weito' Sabotage sort ol an adventure game Executable programs: Dsassem a
60000 dsassembter. E-D DpSde shows a gven set ol IFF pcares. E*D A-rarge a text formatting program. E-0 Assembler programs: Argoterm terminal program w to speech and Xmodem, S-E serttest c tests senai port commands sensarnp.c example ol sonaJ port use pnmntr.c sample pnnter interlace code prtaseh printer device definitions regmtes c regon test program sedace.c source to interface ervef! Program setparalMx set awattnbutcs cl the parallel port SetSerial.c set me attributes (party, daarttitflort me singpiay.c single ptaytokf example speechtoyx: source to narrator and phonetics demo cmede'y c
simple tmer demo timer £ exec support timer turelxjns timrstiXx more exec stccc-1 timer functions WffvonFontc toads and dsprays ai available system fonts process! And prtbasej assnebtef inctute tfes: autorpsttod warnings of deafflKks wtn amorequesters consoleOtod copy of the RKM console LO chaser dsktontn vwnrg of ask ton: tearing bug kiUrc-tw tot of wefines maaos. Function npuldev.W pre-mnaty copy cl the input devxe chapter License informason on Workbench dstobu&on Icense printer pre release copy ol the chapter on prnter divers, from RKUt.i vllldtoG ’dTol .Id tie changes trom version 1.0 Jot.
T v2£vl.df1 'iff cl Lncfude fie changes from verson 29 sa 1-0 AMCUS DiskS FU» from the Amiga U*,' Amiga information Network Note that some of these Sies are old. And refer to older versions of the operating system. These files are tram Amiga Unk. Foratime.
Commodore supported Amiga Lr*. Aka AIN, lor online developer technical support tt was only up and nmng for several weeks These ties do not carry a warranty, and are for educational pur¬ poses only. CX course, than not !o say they donl work.
A demo ot Intuition menus called ’menudemo’, in C source whereis.c find a lila searching aB sutarectorcs bobtestc BOB program rang example sweep.c sound synmsis example AssemWer files: mydev^sm sample dewce driver mytibasm sampte tibrary exampte myibJ mydevj asmsuppJ macros i assefr.btennckxde ttes Texts: armgamcks t ps on CU commands extdsk external disk specification gameport game port spec parallel parallel port spec serial senal port spec vit update Lstofnewf«ix8snverstonl.i v1.lh.tJt 'ctf of mctode fte changes tOnvtrtton F«S to CuCng your own prrter drwers, ddutfAg dOSpeoal C, epsondaa.c,
ntrasm, pnreer.c. pnntef.ink. prtmertagasm, render.c, and waitasm This d.sk does contain a runber ot Res deserting tote IFF specficafon These are not the latest a'to greatest kies. Put reman here lor Hstoncal purooses They induce ext fJes and C souroe eiampies. The aast IFF spec is elsewhere n this itorary.
AMCUS PtSh.fi. IFF Pictures This cksk ncJudes the DPSkte program, when can wew a given senes ol IFF pca/es, ard the showpC program, wt«hcan vw each ti e at re cScfc ol an icon The pcaures irdude a screen from ArtcFcx. A Degas cancer, me guys at Electrode A-ts. A gcrfia, horses, Kjng Tut a Bghfiouse, a screen from Mar We Wariness, the Bugs Bunny Marian, a sal trcm an old movie, the &re Stirazs movng company, a screen from Pinball Contruction Set. A TV rwweaster, the PajrtCan. A work! Map. A Porsche, a shuttle mission paten, a tyramosaurus rex, a planet view, a VISA card, and a ten-speed.
AMICUS Disk 7 DkglVlew HAH demo ptolue disk Ttw dsk has ptotures from tho DigiVew hold and modfy video dgtaer.lt includes Iheladteswithpencitsandtollypcps.tho young girt, the bulldozer, ttte horse and buggy, tna Byte cover, the dictionary page, the robot and Robert This includes a program io vbw ea^i picture separately. And all together as separate. SJdatiJe screens. The ‘seefcrr’ program, to am any screen into an IFF pcturs.
AMCuajsny C programs: Browse vie* text lies on a ask. Using menus S-E-D Crunch removes comments and whte space from Cites.S-E CorExec EXECUTE a senes of commands trom Workbench S-E PDScreen Dirp Ctrrps Rastport of highest screen to printer SetAAematB seis a second image tor an con, whmdckedoreeS-E SetWnJcw maxes windows ter a CLI program to run unde* Workbench S-E SmalCtocfc a smati ttga ctockan a wndcw menu tar ScrjTiper Tte saeen pr r»r in Ta Icatoi AC S-E Amga Basic Programs: (Note: Many ol these programs are present on AMICUS Disk 1. Several ol these were cc averted to Amiga Basic, and are
included here.] AddressSock a simple address took database Bar <tiraw$aban Goad program to ecrwert CompuServe hex files to binary, S-D Cbe Lie game, Intuition driven CotorArt art drawing program DekaeDraw tote draw-ng program n the 3rd AC, S-D E iza conversational computer psydvoogst Otfe'to the game, as known as ’go’ RatoJrat e 3D rar.aze game ROR bogging grapftcs deno Shuffle draws 3D picores ol fte ssatie shufle Speix^ simple spefing program Yovo we'd zero-gravity yo-yo demo, racks yo-yo to tote mouse Executable programs: 3Da.dc Moduli 2 demo of a rotating cutx sets a secc-rw con Image.
Dspia)ed when tote icon scscked a stow but smtya spef checker. E-D re ARC Ste compression procra must-have tor tetecom. E-0 graphics Cernc prog, to rescue trashed disks. E-D a quick but nasty dsk copy program: ignores errors. E-D ssts hurtcs in an object Be E-D saves any screen as IFFpcE-D??
Shareware screen dump prog, E criy version 2.0, term program, Xmodem E-D Alton AmlgaSpc!
Bertrand tssxsahrage KwkCr^y LbOtf SavelLBM ScreenDump SlarTeim Texts: Lattice lAain GdiskDrive GuroMed La3.03bugs MfcrgeRev PnntSpooler .BHAP files: tips on fixing _main.c n Lattice make your own 5 V'4 onv* explains toe Guru numbers bug tist of Lattce C verston 3.03 users wew ot tha McroForge HD EXEC JTE-based print spool prog.
These are wo necessary inks between Amiga Base and We system Cranes. To take advantage of We Amiga's eapatte ties in Base, you need toese fites. 3UA?s are JictijOM tor "cftsr,
• ccrtsote’, 'tfsMonr. 'eiec, tocrr, troutiort. Layers',
‘rathffp1.
MsWieeedoubas'. 'mathseeesingbas', 'matiritoans', ’potgo'.
Tmer and 'translator’.
AWCU1P13LS Artga Baste Programs: FsgfitS-mn Simple fLgh: sndttr program Hue Pale* explains Hue. Saturaton, L risnsty Requester e*. Ol requesters from Amiga Baste ScrofiOemo cerronstrates scron-rg capabilities Syrtwesizer sound program wyirt'Aap draws a map of the worfd Eiecutable programs: Bcmg! Latest Sclrg' iemc.witoi seer^Pe soeed.E Brush2C converts an IFF brush to C Sate instructions, rural zaton code, E Brush2lcon converts FF brush to an icon. E Dazzie graphics oemo, tracks to mouse. E DeoGEL assembfer program terstcppng 6601D errors. S-E-0 Ktock menu-bar dock and Cate d splay. E life the
game of life, E TrreSet Intation-based way to set the time S date EVEmacs another Erra^, more onented to word processing. S-E-D VyG.I a CLI she! Works without the Workbench, S-E-0 Texts: FrtctnKeys read function keys from Amga Baste HacfcerStn explains how to win we gams 'hacker Is!6£0i0 guide to instiling s 68010 in your Amga Bore1 latest Soing! Demo.wiffl setoctatifespeed, E Erusrt2C co.hverts an FF brush to C data instructors, Initafization cooe. E Erush2tean converts FF brush to an icon. E Dazzle graprics deno, tracks lo mouse, £ DeoGEL assemaer program ter stepping 663*0 errors, 5-E-O
‘jock. Rneohbar cteck and das dspray, E tfe me game of Be, E TiroeSet tnLxticrvdased way»set we tme date.
EMEmacs anotoer Emacs. More oriented to word process rg. 5-E-D MyCU a CU She!, works w.rout the Workbench. S-E-D ToS: “ " —" FncWers expians now 10 read ftmon keys from Amga Basic HackerSin expians new lo wn the game hacks' IS6801Q guide toinstejang a 6801 Dm your Amga PrrterTtp sencng escape sequences toyour pviar StartopTTp sps cr, seang up yyj srartup-seaence toe XjnrxRevew tel of Transformer programs Fiat wok Printer Drtvef*: Prtnisf (Jrvflfslw tneCanon PJ-1080A,ne C ItahPfwnBf.an improved Epson driitr that eimrtaias sfreafcng, F« Epson LQ-8C0. Te Gemm Star-10, the NEC B025A. Fie Otodaa
UL- 92, ne Panasorx KX-PiCxx tamly, and die SmsfvCorona D30Q. Win a oconen describing » rtssfiaxm process AMCUSDisklO Instnxnent sound demos This is an icon-drven demo, c/cuteted a many deale's It includes the sounds ol an acoustic guitar, an alarm, a banjo, a bass gutar, a boil*, a calliope. A car horn, claves, waier dnp.
Cecst guiiar, a flute, a harp arpegio. A KicMrun. A mamba, a organ minor chord, people taking, pigs, a ppe organ, a Rhodes piano, a saxophone, a sitar, a snare drum, a steel drum, bets, a vibraphone, a violn, a wading guar, a horse whinny, and a whstle.
AMICUS Disk 11 C programs OoiSI ntuifion-fcased, Cli replacement manager S-E cpri shows and a^usts prtorty cl CLI processes. S-E ps shows into on CLI processes, S*E vidtex ^splays CompuServe RLE pics, S-E AmigaBask: programs pcintered porar ard sprite edtor program optimize cpemisatcn ei ample Iron AC artde calendar large. Animated calendar, Oary a*id cate iocA program amort re can amorizatbns trushtoBOB converts small IFF brusnes to Amiga3asic E03 OBJECTS grids craw and pay waveforms hitoert craws rfiert cuv« madia rad id scry generator maitaik aftng rnai/ig Lsi program meadows3D 30 graphes
program, from Acrv artCe mouse rack mouse tracking example in nires mode slot s'ct machine game tctemoe me game switch pacriir*o-;ke game weed makes strange sounds Executable program s cp urtx-Uie copy command. E ds screen dear. S-E tiff unu-tts sream editor uses 'Off output lob Res pm chart recorder performances ixteatx Assembler programs ds screen dear and CLI arguments example Modula-2 tratfs moving-worm graphics demo caseconvcri converts Ucduta-2 keywds to uppercase Forth Breshehan orate algorithm example Analyze 12 templates tot the spreadsheei Analyze There are toa programs here that
read Commodore W pctura hies They can translate Koala Pad, Doodle, Prrt Shop and News Boon grapnfcs to IFF formal Getting the Ses from your C-54 to your Amiga is the hard part AMCUSD15M2 Executable programs bunk 'artf conpaliW Inter. But lasw, E-D dean spins the dsk lor dskefeaners. E-0 epsonsat serves Epson settings» PAR tom menu E-D Showtxg view h-res Pcs ri low res sjpertxtmap, £ 0 speatime le-t ihe trie, E-D undelete undeletes a Se.E-0 cnvapttTxTi converts Aode | lew. Medun and hgn res pfcftm to IFF, E-D menued menu ecrx produces C cote tor menus, E-D quick quick dsfc-to-dsk hbae copier,
E-D quckEA copes Etedronc Arts asks, removes protector, ED bed 1.3 demo of text edtor from MicrosfTvts.EO C programs sprJ rotating blocks graphcs demo, S-E-0 popdi start a new CLI at the press of a button, lice SxJekick, S-E-0 vspnta Vsprite example code from Commodore. S-E-0 AmgaBBS Anga Basic buitew board prog, S O Assembler programs stariO mates star fields fike Star Trek intro.S-E-D Pidures Mount Mandelbrot 2D view cf Mandelbrot set Star Destroyer hi-res Star Wars starshp Robot rabct arm grabbing a cyinder Texs vendors Amiga vendors, names, addresses cardco fixes b early Cardco memory
boards endude cross-reference to C ndude ties minewaker dues to ptayng me game wei sideshow rraka your own sideshows from fie Ka>ex»scope ds* AMCUS Disk n Amiga Bas^c programs Routnes from Carolyn Scheppner of C3M Tech Support, to read and dsplay IFF pictures tram Amiga Base W.Ji docu- mentalort Also mcLOed is a program to do screen pnnts m Amiga Base, and die newest 3MAP fries, wm a coreded Ccn venFD program. Wtn exarrpe pcues, and ne SlvelLSU screen Wire program.
Routines lo bad and pfay Future Sound and £F souxj f>s from Amiga Base, by John Fcust br Appi.ed Vsons. Wti doamerttKn and C and assembier scxxce lor wnthg ycu own i brart«. And craertaong C to assembler n iitranes Vfth example sound, Exeatade programs gra.-tr So Am«r Jan 86 grartaton graphc smxttPon, S^-D Tfits MIDI make you own MED rstument mlerlace, wih documentation and a hi-res schematic picture.
Mfiuaami Several prograr j from Amaung Computing issues: Tods DanKarys Cstoictueinoex program. S-E-D Am.ga Ease programs: BMAP Reader by Tim Jones ifFBrush29Q3 by Mike Swinger Au»Reques:er example DOSHdper Windowed help system br CU commands. SE-D PETrans trar,slates PET ASCB Hes o ASCII files. S-E-0 C Squared Graphcs program from Scientific American. Sept B6. S-E-D enf adds or removes cartage returns from files.
S-E-0 dodecode decrypts Deluxe Paint remo ves ccpy proteeson, E-D q jcr^vB asks Yes or No from the user returns exit code, S-E vc V&Cate lypo spreadsheei, no mouse control, E-D vew views text ftes wirt window and sder gadget E-D C<ig. Sprartg. JraBoog. Zomg are sprte-based Boftg' style demos. S-E-D CLCtock. SCcc<, wCtock a*e window border Coos, S-E-0 Texts An artdfl on tong-pera-stance phcsoor m on ton. Tps on making brushes of cod snapes n Dekae Par:, and recommeneaScns cn icon tfurtaces from Commodore-Amga.
MiCUSDMtIB Th« C programs Inciud#: y a Me pnr^ng iffility, when can pnrJ files r tie background, arc w.n ine numbers and control character liarfng.
In' osprays a cnan of re bocks a located onadsk.
Ask' questions an execute' file, relms an error coco lo control ne execution In that bath file ‘StaT an enhanced version el AmigaDOS 'status' command.
¦ObaoW random -dot dissolve demo dsprays iff pfcwe slowly, dol by dot in a random I ash on.
• PopCLC invoke new CL! Windcw at the press cl a key, Tlio
executable programs Include: form' file formatting program
through the printer driver to select prrt styles
• DskCaf catabgj dsks. Maintains, sortsrterges lets of risk Mes
‘PSovrtf SinRiza Industries' sampled sound edlor £ recorder
‘tonmakef* makes icons for most programs
• Fractals' draws great fractal seascapes and mountain scapes ¦30
8raakcur 30 gasses, as ate treacut n a new dr enscr 'Am^iMcntor
dsplays Lsis of open files, memory use, tasks, dsras and pols
in use.
¦Cosmorotds' verson ol 'asteroids' lor the Amiga
• Sinters' Ngh resoWcn graces demo written mUo&MZ.
Teits: ari tir eipurs escape seotences ffo CON; itevice responds to.
Tktey" ndudes template ler nabrg paper to sit in the My at the top of the Amiga keyboard 'Spawn' programmer's doamero from Commodore Arrjgi. Eescnfcs ways to use Fie Anna’s mjfitaskivg capabutes in your own programs.
AnXgatwc programs: "Grids' draw sound waveforms, and hear them played, tignr a version of the Tron fight-cyde video game.
‘lAjaSor a game of solitaire.
Stats' program to calculate bating averages ¦Mcney *try to grab afi the bags of money that you can’ AmiCUS iSaiso indudes two beautW IFFpwrtj-es.olihe enemy waiver s from the ica planet in Star Wars, and a picture ol a cnee tah AMICUS Dbk 16 ‘luggler demo by Eric Graham, a robot juggter bouncng three mirrored bals. With sound effects. Twenty-lour frames ol HAM anmadon are fippsd quckly to produce this image. You control the speed of ne jugging. The authors docurnenraton hnts Fia: ths program might someday be avatabie as a product IFF picture* parodies of Tie covers of Amiga World and Amazing
Computing magazines.
C programs: 'inputrarde' example of making an rpis harder.
TileZaW brary fle vHnj program Shcwfhnr d sptays FF petite, and pnna c. ‘Gen- program ndeies and retrieves C strucuras and variables declared in ne Amiga mciyde fie system.
Executable Program*: 1=.iMur*r repairs anexeaAabteprogram file for erpa-dec memory 'ms2smus- owive ns Mj« Studo S«s to £f s&dted
• SMUS'kymat I have heard t*xs program mght havt a few bugs,
especraly in regards to very long songs, but it works n most
cases.
¦Mssie' Amiga verson ol Fte V^sJe Conmantf _wdeogame.
Tlxs tfisk also oor.taxis several files of scenarios la* Araga Flight Simulator II. By puttng one of toese seven f les cn a blank ask.
And rsert-ng it in the dnve after performing a specal command in this game, a rwr-ber ol mteresong locUons are preset into the Fl^n SirRlator program. For example, one scera.no paces yor plane on Atoafraz, whie ancJier puts you to Centra Park AMCU5 PiSK 17 Tetsnmirtcations ask wfiuch ConUfrts sit terrahaJ prograns.
‘Comm* VI.33 tern prog, with Xmodem, wxmodem, term prog, includes Super Kirrtvl Dave Weckers VT-100 emulator wth Xmodem.Kemit, ana scrpong ‘An-ga Kemr v*D060) port oi n um Okami 'VTek*V2JJ.l Tetdrooa grafrkcs terminal emuaror 'ATerm* V7.2 'VT-100*V2.8 oased on the VT-100 prog. V2J ard contains latest'arc" file compression V0.9 for CompuServe. Inckxtes RLE graphics atrfibes A CiS-B Me transfer protocol expanswn memory necessity
• emoves garbage characters Iron modem received lies filters text
files from ether systems to be read by the Amiga E.C.
executeabte version lor use with mem expanson article to
Acv2..1 file dooroenatiQn end a base tutorial cn ixi 'arcing
files tor makemg 'ax* iiies EC, 'AmigaHosr
• Furtjnk*
• nxct,* Txt* 'addmem*
• arc 'arcra* AHCUlCtULU Logo Am.ga versdn ol no popuacompuier
language, wtn example prograims. £-D Demo verson ol the TVTeil
character gene'ator Tv'Text freely astnbutaSe msons cf ?e
updated PagePrat and Page FF programs tor the PageSecer desktop
pubJshj^ package.
Rewes any CLI w-noow ustog onfy CLI commands. E-0 3-D verson el Conway s LtFE program. E-0 PageSe^r FiiTW.nctow Lile3d CU Lckry B re-astgr. A new Workbench dsk. S-E-D Calendar.WKS Lobs-compai ble wcrtsheet nal makes calendars Defcisk SetKey Demo cf keybcard key re- programmer, wtr. IFF pca/e to nake frjncSon key iabe*s. E-C Video patJero generator lor aligning monitors. E-D H^ivott Packardifce cafcJaior. ED Change the Preferences settings cn the fly, in C, S-E-D Program swfies stfNar evoiuioro C source todubed for Amiga and fi4S-DOS, S-E-D C version ol Cdin French’s AmlgaBasic ROT program Iron
Amazing Compufing, ROT eats and dsplays polygons to create uvee dimensional objects. Up to 24 frames ol anmatioh can be treated and Osplayed E-D Uke Ing. W.ndows on screen ran away from the mouse. E-D Decays' tv CLI wndow nto dust, to Modia 2. S-E-0 Aids layered shadows to Worfiercft wndows. £-0 ftMSUSlliUa VFG HP-iOC SetPrefs Starfrcbe ROT Scat DK DropShadow2 Thstfsk cames w«ra programs iron Amazing Computing, The IFF pic&res on fxstJsk ndude the Amiga Wake pari T-shrl logo, a sixteen-color h-rts image cf Andy Gnffizn. And five Amiga Lrve1 ptdxes from ne Arazrvj Stores epsode that teat-^ed
die Arsga.
Soifi Lnear equabon sofvtr r assemttor language. S-E-0 Gadgets Household Bryan Casey's AmigaBasicSCJdria.
Bryan Cade/s AmlgaBasic household inventory program. S-C Jim ShekK1 Vraveform afiasc. S-D John Kennan's Am IjaBawtfW Ltxanan program, S-D Nan Smith's AmgaBasc subscr.pt example, S-D String. Boolean C programs and executables for Harriet Maybedt Tolly's Infix tan tuonals, S-E-D Bob Riemersma's examplo lor makng small C programs, S-E-0 Make C look like COMAL tflifljr Me, Waveform DsMjO Sucscnpts Stormy C COMALh EmacsKey AMOfll.1 BTE Sze WinSze Makes Emacs luncbon key definitions by Greg Douglas. S-D Snoop on system resource use E-D Ea-tfs Tale character edtor. E-D CU program snows the s^e o! A
given set of ffles, E-D CLI window utJfly resizes current wmdow. S-E-D AMICUS Disk rg Compactor. Decode' Steve Michel AmigaBasd tea's S O &»Ed 003 and spr.teeatof written nC.S-E-D SpnteMasterll Spr» ftfter and artmator by Brad itetef, E-D ate: chip eiptoratxm C program by Tomas Rcfcciu, S-E-D image processing program by c« Bush toads arc saves IFF images, changes them wtfi sev*ra schnkjues. E-D Conpfete home banfijng program, balance your checkbook1 E-D AMCUSDism Bsrua Fpc Bantei Target Mak.es each mouse dick sound ike a gunshot, S-E-0 5a«J Sropie game of said that totows ne __mouse pointer,
E-D Ha-net Maybecx Tony's proporionaJ gadget exampe. S-E Checks to see if you have extra-ha't-bnghi grapftcs. S-E-0 Pa.no Smpte pane sound program PropGa^et EHS CefScrpts Vakes cef anmatcn scripts for Aeps Anrr.atof. n AT-ga3a6; Tr«$ ask has etectronc catalogs for AMICUS (Saks 1 to 20 and Fish asks 1 to 80. They are viewed with the DskCat program, mduded here.
AMCUSIM22 Cydes Ught cyde game. E-D Shcw_Printi! Views and prints IFF peases. Ncudng larger Tan screen PrtDrvGen2.3 Latest version of a printer driver generator Anknafions VideoScape animatens ol planes and being ball Garden Makes Iraoal garcenscapes BasicSorts Examples of twray seaxh and insertion soninAroigaBasi: AMC'JS.DiSk2a An AMICUS disk corr.plelsly dedicated to musto on the Amga. This ask contains two muse players, songs, instruments, ard players to tnng me thnl ol paying ‘Big Sound* on you-Amiga tostruments a cofiecton of 25 inslrurnenS lor paying and creathj music. The colecton
ra-^es from Carmen to Manmpa List WSTR program to ksi the instrument* DMCS wtl net 'oad as wei as 1st Tie origins lor any inSTtfWX Muse s cofectoi of u Cas&ca peces 161 20vw1ub The * 6 minute toassca! Teai/e car,pete wfthCamon!
Three Am^a Muse Rayrs: SVUSPlay MuscCraft2SMUS IA«c5fjac2SMUS AM-CU5DSSK24 Secterar a A ask. Sector editor tor any Am gaDOS fr'« strxtutedoevice, recover fi'es from a trashed hard ask. By Da-nd Joxver cf Mcroltosicrts tcrize Reaxes re Pie c! IFF rt^es.
Companion program. Reefer, remaps Tie pa.e:e cotors cf one pdure to use ne pa'efre coiora of anctrier. Using these programs and a tool lo convert :FF Crosries to Worktjench icons, make icons lock like minaturas of Ihe pictures.
CodeDemo ModUa-2 program converts assemPer opect files to Arte CODE statements Corrtes with a screen serofSng exarape AmiBug Workbench hack makes the same It/ walk across the screen at random intervals.
Otherwise, compefely harmless.
BNTools Three examples ol assembly languagj code from Bryce Nesfcrt; i SetLace.pog to swtcn interface onioff.
2. Why, repace Am.ga DOS CLI Why
3. Loadlt, prog to toad a file m‘o memory unM a reboot (Only trie
most esoteric hackers will find Lcadts useful.)
Monolace CLI program resets Re'erences to severa: colors ol iwocrirome & menace screens.
C souroe ts included, wwks wiSi Dspa/Prsi. A CU program wncn aspays fie current Prelererces se'ngs Bo mg w achine A ray-traced arvmation cf a pe'petual mobcn Bcing-makirg machne. .mduoes Jte latest verson o! Fie Movie projram, when has tno aOrty a pay »xcs £ong wn re animates By Ken Ofier Daisy Exarp'e ol using trie translator arc naratofosvices to make rte Amiga tat If is written m C. OuoTlx Scrpt-dnven antfnaifcn and stoesnow program f=ps through IFF r ages Bmon System monitor Ar^aBasi: program; perform sxnpie martpoatofts ol mer.cry. Ltocse Random background pogram. A smal windcw opens with
a moose resembtemg Buitwnklesaying witry phrases user CelnaKe.
DGCS Deluxe Grocery CorsTjcson Set. Srr.pe Intu Son-cased prog for sssemprg anj prfnSng a grocery list Trio Virus Check directory holds several programs relating to the software virus trial came to the US from prates in Europe as (totalled in Arr.az.ng Comping V2.12. BII Koesters hil explanation of tne vrus code ts inclutod. One pogram checks lor the software vtus on a Workbench ask: tne second program checks lor the wus in memory, which could infect other disks.
AMCUS DM.g Nertesi 5 GrapfKS demo pars fri'ough spaa tywa-ds the myncal oark tw.n cf the sun with wonosrl J muse arid space ompftcs Tne KckFtay Orectory heds tiK that oe scr,oes several patches to Tie Kicksiart dsk. For Am^a 1000 hackers wnc feel ccrrfcrtap® pathrtg aOskin neiactocmi. KickPlay offers Tv cnance to automatcaly do an ADDMEM tor cto eipanson memory, as wei as the abtfy to change me pa/e ol Tie 'Insert Workbempr hand A program is a'so inpuded tar restoring Tie correct checksum cf Tie Kckstart ask.
KeyBnd EASiC prog eats teymaps, adjust the Workbench kayr.aps sr create you own BccbAVB Modf*s re Workbench so reee btptanos are Fred Fish Disk 2: fndFULfiHQ 1 Fred Rift W*k 21 used, icons can rave eight colors, instead of alb Object moduto Itoranan.
A EoxSe of Basic programs. RnduAng: Dim of sotrce lor McroEmacs, several versions tor most tour, eight-Color icons are included Putoc cc Unix-ike Irontend lor Utoce C Jpad toybox ezspeak mantseoro popJar operating systems on nxcros and mainframes. For domain program ‘zapfocn* or tnisrulicon' c&mpder.
Xmodem 3dsolids add»ok algebra people who wart to pert McoErecs to their favorite converts eight-color IFF brushes to icons, to dbug Macro based C debugging package.
Rcr a-mgseql am ga-copy band marine.
Use Detuie Paint to make Cons lor tnts now Macrre ^dependent txjunce box brickout canvas Fred Rsh Dm 24: Workbench.
Make Subset cl Unix make command, cardfi (xde colorcndes Copy Conques inters taler adventure Simutaticn game Brush Icon Converts brushes to Cons (buarr decs).
Make2 Another make subset command.
Obesi cutpaiw datedogstar Csn update to snei: on Disk 14, wan buit n EgrapA Grapfing prog reads M values from a Me mcfoemacs Small version cl emacs eotor. With dragon draw dyramionangle ccmmands,named vanabes subsStuton.
And displays den on re screen, jimtar to re macros, no extensions Bza eztenr ttik&uster fractal ktodula-2 A pre-release version ol the single pass same-named Urn program.
Portar Portabe tie arortver.
Tscape gomoku darf haku ModJa-2 compeer origtfiaJfy Aerefoped for Macrfccsn a: Keep t.t Message-naragmg program for telecomm m- xrf DECUS C cross relerence utirty.
HalSOOO haltey haunedM hdoen ETH2. Ths code was transmitted to re AM GA anc is caaons>5$ you save messages from an Fred Flsrt Disk 3: Jpfri foz mandel nerti e*ecutedontoeAVGAwshaspecralloaoe'. Btnaryonfy ontne mscripi to axner fie. IWiUts gothic Gctoc tent bamer pmter mini pari mouse OrtoeCo paW Fred Rsh Disk 25 f« message formal ol re national nefwefts raff A ’rot!* type text looaher.
Bera ptfMhed gbmrandofn-ordes GraphcHack a aapne vere.csi cf re game on as<s and several types cl Cxfletn beard soriware tf A very las; text larraner Readme rgb rgotest Rord 7 and 3 Thg is the grapncs-criented Hack Moves through re transopt arc save cforfh A ffrgffry ccnabe torlh rrpierr.eraoon. sabctaga satosulk shades shapes game by John Toebes. Orly she messages Lets ol goodies.
Shutae executable « preeert KjlUittr Speed up directory access, t, creates a smai iinp »sp 1 4. Not working corrocfry sketchpad spacer! Speakspeacn Frtf Fish Dish 26 tie In each 6rectory on a disk which contains Fred RsfiDiskA: speecheasy spell sphere UrHunk Processes re Amiga tvik* loacties.
Re interna con about the fries, wrt also remove barrier Pnrts honzonial banner spiral stoper superpad suprsnr Colec; code, data, and bss h'jnks tourer, afows mdwduai an re lastorf *ies iron each directory by bQrep A Beyer-Moore grep-frke unify talk termnai specfcato of code. Data, and fcss ongr.s. and generates Climate s authors bison CNU Unix repMcement 'yacc', not term test tom topograpriy triangle bnary file with forma: reminiscent of tin* ‘a ouf format, Th* The LaccWB pro-am charges between interface and non- vrtrkirg.
Wheels xenos xmosciper outwt f-te can be easiy processed ty a separate program to interface Workbench, Previousfy.youwere bn X-icrer Bayer-Moore grep-ike utiry (note: sore programs ve Abase, most are AmigaMsc. And produce Lfotoroa ’S-records1 anSAe tor dowrLoaAng to breed to reboot alter changng Preierences to grw DECUS yep some programs are presented m boto languages) PROM program mer. By Eric Sack.
An interfaced screen. This program!! Ps kermit simple porab e Jds-rr t wfri no correct FfK! RSI DISH 14- C-Lemit Port of tos Kermit Re transfer between re normal and extended screen mode aroga3d uodate ol *12. Includes C sorts to a program and servrer.
Heights MyCLI Reptacemen! CLI Isr re Aruga V. 1.0 full hoden surface rer.cva' arc 3D graphcs Ps Display and set process prcntes PYY^Uttry A snare-ware utbry ter PraWrtre users, changes mandel A Mandebro! Set prograr. By Fteben b«p Source tor a ktocwn ret generates a Arch* Yet arc re* program for burfotng up margin »Dngs and tort types.
French and RJ Ual beep voofo text Slet ana r.a£ng or pottng toem Gnu A CL I program, pmts cut probaCte causes lor aei exracs ten from wrvn C source ties as a snge tie ixxi Guv redatcrs; C scute nduded CoftS Console devce demg program wji Anwrtsons demorstoates N flmersicnal graj^cs fsisa wm OiSkWipe Latest from So Vara Dstflery. Removes fdes suppcrung macro routines.
Tiezap update cf Ask 10, a CM patoh ufrlty Abdenos Am.-ga Base cemcs: Carofy Scheppner.
From drectories or dsk drives. Much taster freemap Creates a visual dagram tree memory gfxmem update o! Ask 1, graphic memory usage NewConvtrfFD creates rtr-aps from id ties.
Pan ‘delete.1 rputaev sample npul hanfler. T raos key or mouse inAcafor Spranes Snds addresses c? And wnfos to S now AmigaBaste makes srewflake designs events 9 converts IFF txush ffes b image stofot. Fi Ptpfa-es of toe screen’s bitmap.
MU!
Maing Ksl database.
Joystck Shows how to set up re gameport Ctext AboutBmaps A tutorial on creation and use of Wraps.
Scribal stats Maintan scribal statistics'team records dewce as a joystick pdtem
s. rrple ANSI VT100 temina' era Jator, LoadHBM toads and displays
IFF HBW pics Dodge Shod Modula-2 program moves re keyboard
demonstrates Arect comrnrtcatxyns in 80 x 25 saoen Load ACS M
toads and ispays AC EM ptos.
Workbench screen around aher a penod of with the keyboard.
She« sanple Unix W Ifyfo shel ScreenPnra creates a oemo screen ana dumps it to a time, prevents monitor bum-in.
Layers Shows use ol the layers Ibrary termap rncsJy Unix compaspie termcap' graphic printer.
AMOS Disk a mandeibrot FF Mandelbrot program imptenentaton.
Daassem Simple 63003dsasseTt»r. Reads Taw Fa/$ SooijScape modJe code from ri$ Amazing mouse hooks up mouse to rght pysfrck porf Fred Rah Disk 15: stands/d Amies ccec: Mes and Computing a/tdes. The sox* b Echo.
One.wrdcw ccrsoie wndow demo Bicbs graprvcs demo, ike Unix worms' osasseTibes toe obL seccvs Data Chord. TX and VU is included The Laace para^ Derwstraies access to re pararei port.
Cfock smple Agtai cfock program tor re Lie tar seacrts are impec n hex. The acoua: and Man* C Source code <s here, along wtn pnr.ier opening and usng re pmter. Does a Dazifo An eigtt-tofo symmetry dazier program.
CSsassember routnes are set up s be re executable rooddes.
Screen &np, not wortang Real) pretryf cabbie from a user prog so irsfructons Ctu2 Upcate cf prog b convert IFF images to prvt support Printer support rouJnes, rot working Rsh doutf* buffored sequence cycle n memory can oe isassembfod PostScript ties lorprmsng on laser printers proctesi sample process craabcn code, not arvrabon ol a fen fjnamca!’y Ey Bfi Rogers SOSadup Hard disk backup prog w.ti lempei-Z/v workng Moppofj A realy nee monopoly game wnien in DvcrakKeymap Example of a seyroap sduojre for re compression to reduce re necessary ixrrber regcn denes spit cravmg regens AdipC.
Diwakkaybcardlajmti Untested but cfdsks.
Sampietont sampte font with into on creaing you own Ckda^Dump Cfodata ML62 p.ver and WorkBeah mduded because assembly examples are TCB Pnnts Intorraaion about tasks and processes serial Demos the serial port sceen dmnp program.
Few and far between. 3y Roden Bums in the system: assembler source is hrfuded.
S-.ngijPiayfeto Creates 320 x 200 ptayted Pdydraw A dr awing program wnCeh in Abs$ C. Hypocydotos Sprocrapn, Iron Feb. 64 Byte.
FtfiBui lets a tunctbn key act like a rapfo senes cl left speechtoy tales! Version ol cute speech demo Pclyfractals AI racial program wntten in AbaslC.
UresDemo Example of popcrtcrai gadgets to mouse button events.
Speech.demo simpMcd verson of speechtoy. Wth K) Fred Fish IM16: scroJ a Super3itMap, DC A handy program lor people who use an Amiga requests A complete ccpy of re latest developer lcF Ask kfemExpansfon Schematics and tfrecdcns tor txrtSng 1020 5 1/4 inch dnve as an AmigaDOS hoppy.
Lextdemo A splays available lonts Fred Fish Disk 17; your own homebrew 1 Mb memory A Workbench program ihal sends a timer demos trier device use The NewTek Og View vfoeo Agtozer HAM demo Ask expanson, by Michael Feiinger.
DtskChange signal lo the operating system: srac*3sk demos trakafrsk driver MrsnDMtifl; Safewraix Program a oebug to.^ocO’ cats instead of typing ‘Askchange <32 ‘ ever and Fred Rsh Disk 6: AmgaDisplay dutrb tenmnai program «*i bel.
ScenceDemoa Convert .yiar, t: solar and sbereat cveragaJiAStCekor.recon C source cam press ae Uftx compress, a fte squeezer sefocabte fonts sme, sieiar pcsitons and ralal included.
Oadc analog dock Lmpersonator Asr.
Prerelease C Snet-ike srteti program, vrefooty epoch ca'aAatens and Gateean System corfog Fie makes screen 80 columns wide of ted n rrucroercacs upgrafled version cf mcroemacs from Ask 2 risaory. Loops, etc. satehte pcttet Ey David Eagie.
Re Scrtobte1 wwd processes.
MUt removes n Jbpie ocortig ines rt Ees Browser wanders a fie tree. A splays Ives. & FretfRsflDi5h2fi DctiRam 2 programs to move re Scrtde1 speing scales demos using soi/fo and audo fircSons with tne mouse Aeasc games Dy OawJ Adoscr: Backgammon. Critege.
Acwary to and from re RAM dsA sarerajel Ajcws changing paraM pen parameters MC66C10 docs on upgrading your Amga to use a Westone. And Otoeio Letcal Analyzes a text fie and pves the Giimng- seise naJ Ajcws changng serial port parameters U 030 to Cf!> OECUS ’cpp* C preprccassw, 4 a modified Fog. Fie sen, and Knead nacres wficn tone qixcksorf based sort program, in C MufSAm rotate an N dmcnsionaJ cube with a joystick 'cc tiai knews about re cpp’. Tor Man C. measure readatrtry.
Stnpc Stops comments and extra PigUtih SAY corrroarfo that talks in Pig Lain Shar urutoorapaljMe sfreJ axfwer, for HeiOjmp Moduta 2 program » ospfoy memory locations whuespace irom c source Scnmper Screen image pnnier packing fies lor rave!
In hexadecimal.
Fr£dfi3!U?l&fc Xlspl.6 source, docs, and execut lor a Lisp Lnterpret.
Super BitMap Example o! Usrg a ScrotLayer, syncing Tartan Am ga Base: design Tartan plaids.
This Ask contains re execuiabies ol the game Hack V i.Q.t, Fred Psh Disk 19; SuperBiiMaps lor printing, and crearng Dir Master Disk catalog program.
Fred Rsh Disk 8: Blackjack text-onented bfack^ack game dummy Rasforts.
BMP plays 8SVX sampled sounds in the This Ask contains re C source to Rack on Ask 7.
JayMrerSides Sides by Jay Miner. Amiga graphics tfip Frsd nan Disk 23 background *tde something else is happermg Fred Rsfi flesgttet, showing ferweharf cl toe Amiga AegrsOraw Demo Demo program wjxrj-, save and no docs.
In re Amiga, as your Amiga is toofcng, tor more Draws moire paricms in black and white internals, in 6*0 1 400.
AnmatorDemo Player for re Aegis Aromator files example.
MVP-FORTH Mountao View Press Forti. Version Keymap_Tesi test program to test toe key mapping routines Cc Unix-lke front-end for Mara C ShowPt CLI program changes you1 pointer to a pvm 1,00 D3A. A sha'eware veri«n ol LockMon Fnd irefosed fie locks, lor programs Enoj^i Tests tor existence of system ponter.
FORTH from Fantaw Systems.
Ret aim cean up resou'css. Ti-es. And cev-ces AUCUS 26 atto has a coaecbon of mouse posters. 4 pro ft a more powertj text tomatfng program Fred Fish Disk 20: Rubik AnmaiKl Rubiks cube program Workbench program to dsplay rem «ca» Prog to toggle interlace mode on and off AnugaTcAan corr.erts Arr.ga cb>ea ccoe to Aan term StmgiJb s*ewb a rutic’s cube type demo DtskSalv program to recover files from a trashed vttoo VT-’OO termira! Em'Jator wn Kenrjt arc sparks roving snake Graphics demo AmigaDOS Ask.
Xmodem protocols rrra mn miskiw; Hash example of toe AmigaDOS Ask hashing riM f-isn D!SK 3d Fred Fish Public Domain Software conquest An interstellar adventure sin Jason game (unction Sererai shareware programs. The authors request a donation dehex convert a hex Ilia to Qnary Hd He* dump utlity ala Computer it you fnd nor program, useful, so they can write mere FredFUhDlskl: filezap Patch program for any typo of Ate.
Language magazine, April B£ 50'fware amigadcro Graphical benchmark lor comparing amigas frxot3| Stop garbage oft Xmodem transferred files.
ManoeiBrots f^ndeibrot contest warmers BBS an Amiga Basic BBS by Ewan Grantham amlgaterm simple communications program wttn ill Routines to road and wnie iff formal ites MuttiTasking Tuionai and examples for Exec level Fine Art Amiga an Xmodem Id simple Areaory program mutitasfong FonlEAtor Pit fonts. Dy Tim Robinson baits Simjabon ol re "kinetic tfingy* with bats is Miamai UNIX is. With Unix-styie wikfoardmg. In C Pack stops wtvtespare from C source MenuEAtor Create menus, save them as C source, on strings sq.usq tie squeeze and unsqueeze PoflHandter sam.pe Port Harfoter program that by David
Ftehrson colorful Shews oft use oi (tod-and-modfy mode.
Trek73 Star Trek game performs. Shows 3CPl environment StarTenrtSO Very nice telecom by J. Nangano dhrysune Dhrysione berxhmarit program.
Yachtc Dee game.
Random Random number ge-nerator et assembly, t or (Fred Fish Dtsk«3 is tree f requested when ordered with at dotty Souce to the 'dotty window demo FffdRSftLTSh 11; Corassemyer.
Leas! Toree other Asks from the cosectfon.)
On re Workbench Ask.
Dpslde side show program tor Asplaying IFF SetMouse2 sets toe mouse port to ngU or ieft FfMflfllI»K31 frecdraw I i 1 i I mages with m-sceiianwus pares SpeechTerm tefflinaJ EnJaior wffi speea tile lute game, usesblaer to do 19.8 boxes.ee. FiidRifiDflfl l£ capabtMs. X .Modem generators a Second gad John Draper's Gadgel Mortal program aiuga3d Shows a rotaing 3 Amensonal sold 'A-ruga TrEd Demc editor from tulcrosroitht CharSe Hearn Mandelbrot Version 3.0 ol Robert French’s program.
Gfxmem Graphical memory usage display prog Sign".
Fred Fish Dtik 21 Mi Example Mutual exduscn gadget example.
Halftnta demonstrates ’Extra-Hatf-Brite' mode.
Argo Term a lermna! Emulator program, wntten Ths is a copy ol Thomas Wilcox's Mandelbrot Set Explorer RamSpeed Measure reiaave RAM speed. Cf*p arc fasi if you have it inassembfof Asfo Very good Set Replacement for the Manx ‘set* hello simple window demo arrow3d Shows a rctatng 3 ftmersxral wire Fred Rsh Disk 22 command for environment variables.with laStp accessing re Motorola Fast Ftoatng frame arrow.
This Ask contains two new 'strains' ol microemacs.
ImprovemenEs.
Point library from C ld4 A rectory i $bng program Lemacs version 36 by Daniel Lawrence. For Tree Draws a recursnre free, green leafy type, palette Sample prog, lo design color palettes.
Icon Exec Uni* V7, BSD 4.2, Amiga. MS-DOS, not tiles.
Traddisk Demonstrates use ol re I’ackAsk driver, SeiWodow two progs tor launching progs from Work¬ VMS. Uses Amiga function keys.
TxEd Cnpp'ed demo version ol Merosmitti's requestors John Draper's requester tutorial and bench, presently only works under CLI.
Status Inc. e*ecute. Startup ties. More.
Text editor. TxEd example program.
SelAllernata Makes an icon show a second Image Pemacs ByArdy Poggio. New teatures include Vdraw Ful-teatured drawing program by speech Sample speech demo program when clcked once <ALT> keys as Meta keys, mouse Stephen Venetian.
Stripped down ‘speechloyT Star Term terminal em Jator. With ASCII Xmodem, support, higher priority, backup fries.
Xeon Invokes CLI scripts Iron icon speechtoy Archer speech demo program.
Aafer.mera. word wap, lurKtonksys.
Ticon Displays text fries ‘rom an con.
Print 1.2 Cll’based printing utility with several nice teatores including ttie abiy to print in ASCII or HEX, with or without line numbers and a CTRL-C Trap, includes soiree. Author. John F, Zachanas Sh Another verson of the 'Sh' utifcty to irshar shell archives. Apparently corrects some problems encountered by s. mi tar programs. Until we can get everybody usng some sorl of •standard’, perhaps it we collect enough of these utilities, we wil everouatty £no one tnat wcrts win ne pafloJar archive we're trying to unsha/! Includes source. Author Jim Guitord Stongs A Simpie utiity win command-fine
options tor beating stinngs in a binary lie. V1.0, incudes source. Autrer Joel Swank TflePage Prints bamer-type tfe pages for identifying E stings, Lots of command-line options tor specifying various bnts. Pitches, type style s. selectable centering, etc. ©eludes source. Author Joel Swank Tunnel An interesting graphics demo written in TDI-MXJa 2.
I suggest you dent stare at this tx long1 incudes source Author; Garh Thornton flfa rlstl DjsK 175 Semens very bee interactive nspiay of re ne Pence* Tabe cf Elements. Car dspiay a Large amount of pertinent data about a selected element along win a gctod deal c! General and miscellaneous n'o, Author: Pai Thomas Miter For hose of you who may have ever used fw ‘scale size cut and place’ method o! Determining ycur rex*.
Lvng-room arrangement, ths Amiga-ized verson may be just what you reed. Bxiary only, shareware.
Author: Terry Giro Furnish Program lo compute and plot 3 rSmensonai h/xtions.
Major revision to PD version on FF49. V4.1, binary only, shareware. By: Terry Giro SafeBcct Very handy intuition-based program to read and save custom KxjHocks. The boo Hock can then oe later restored should the Ssk beams virus-infected. V2.2, binary only. Author: Mart Lanoux SsndMorse Brush up on your morse code with ths ample Pot program fiat will read an input textile and output the characters at an adjustable rate. By; Joe Larson V 3.10 of the popular vmis detecforYvaccinabcn program. Features a test for the new IRQ virus, among others, and a new "KjI Virus* utility. Includes source.
Author: Sieve Tibbett WBDepth CLI program that allows you to change the number of bitpianes for the WB screen on the fly. Very useful lor A500 and A2000 users with hicks tan in ROM. B-,nary only. By: An<Jry Rachmat A 'Graphical Shell’. Opens a medium-sizo wirdow and aitachasa menu-strip lor periorming an sort ol disk/data manipulations. Features script files allowing you to attach custom menu selections as you move between directories. Also inched is an intuition based utility for altering Filelnfo data, (filename, filenoie, RWED attributes, etc.) V 25, binary only. By: M We Wen VrusX Zppy
EmLElaiLEiaLlIfl AnafytiCalc V23-2A of Glenn Everhart's large and powerful spreadsheet program called Analytical, submitted to me directly by Glenn lor inclusion in me ibraryan update to FF144. AnalytiCaic is presented in entirely ZOOed form because it could net olherwise fil on a single disk. With this release, AnaytiCalc has become
• Freeware* rather than ‘Shareware'. Thus the onfy restrictions
on Analytical coda are that derivative programs remain freely
distributable.
H/perNet HyperNet is a small hypertext shel program for Amiga, presented with sources and brief documents., HyperNet aJcwsa ‘master* Am^aDos process to control a series ol connected processes, where the connections are randomly ordered directed graphs.
Pemssibte *cfikT processes avalabte a! Any stage are governed by the finks ot the graph. The implementation is mainly instructive, but can be used for tutorials or demonstrations and Elusfrates the simplest/ of hypertext concepts on a muHtoasfcng system. Author Glenn Everhart FtM Rs?1 Disk 177 Aspce A version ol the S?iCE 2G.6 crcul analysis program whch has been modified to run in the Amiga envtfwmert The program arrays are adjusted to require cne forth the memory cf tfe DEC VAX version. Although this does not usuaBy put much of a constraint on droit analysis, some users whs are used to the
ftAI mainframe environment may have to be more aware of the memory demands of the* analysis. Requres a mirtmum of 1.5 M3 memory.
Ths verson neither supports nor requires the 68020 processor or 63881 coprocessor. Binary orJy. By Many DskSalv Vt.32 of Tie pcpuar ’undelete' and fierecovey program. Fixes a few bugs apparently found cn the VU on Fft&S. Author: Dave Hayrie An hi* ton-based re placeman; for die ASK command. Wil bnng up a requester w,m a message and boolean yesro type gadgets. V1.0. refudes soiree Author: John Baryvnget A simple CLI utility to add a speeded rvrDer cf spaces or tabs to tie left side cl every line n a fie.
Includes source. Author: Joel Swank An interesting concept m path-searching, Ths program contains a patn-tendter that aSows ycu to selectively control or assign your system's seaxh paffi using script fies. Includes source. By: Rco Mariam FradflyiDM 179 Jask Marge Patn AmtcForm Creates a Phonebook containing only those areacodes and exchanges reachable through PC- Purswl Update to Ffi57. Worts with the new Finalist BBS formal V1.4, Binary only. By: John Motsinger BtackBox The black box is an 8x3 grd in which several ‘atoms* are hidden. Your yob is to ind the atoms. You have at your <S sposaJ a
ray projector which you can use to send rays into trie box from any cl the 32 spots around the box. Binary only. Author: Tim Kemp C LATrrer Two versions ol datimer routines to provide precise timing for applications requring a h^h-accuracy real¬ time dock. Indudes source and a sample executable.
Aujvy: Kan Lehenfcauer. Based on the ong-nal verson by Paul Kigginbotlacn Cosmic An imtersseiiamuftipiayer game o! War and Peace.
From the looks of the documentation Ue, it appears tairtyeaensive! Vt.Ot, includes source. By: Cart Edtnan U V2.0 cf the popular EJMtX style PL'ecto-y tster. Revised tor Lattice 5.0 artf made 12 compatible. Includes souroe. Author: Justin V. McCormick.
RemUb Removes a spe©ffed ibtary (if arrentty uused) or rtspteys seme information about at! Available fipranes.
Update to Ffi39. Vi ,11, includes sewee in assembler. Author H&koRatn RexxArpUo V2C cl the rexxarpfipJitray, which has grown ccnsderaHy, with substantial rtuton interlace Support. Aso included is a large number of Arexx macros. Autiren W.G J. Langev&id EfPd EsftDisKlTB DietAid Diet planning aid to aiow the user to compis Lsts cf ingreaents (recipes) and automatic^y compute Ca5arietotais.es. Update FF36. V3.1, binary only, by Temy Grtz Dmaka Beta release cl Matt s verson of the UNIX make utiity. Features mtitple dependandes, wildcard support, and mere. Includes source. By Matt Dtfcn Excpten
Exception is a set cl error handing routines Jiat pror.de a programmer with the ability to easiy handle often tSfftait to implement routines. Routines such as no mere memory, fie not open, readwite error, „etc.
Vo.fi, includes source. By Gerald T Hewes Kick Font For A-1 COO owners. WJI pernianently replace the topaz torn on the kickstan disk with a tom called Took’, ©dudes a sample in the form of an IFF picture. V3 0. Bina7 only. Also included is Benjamin Fuleds freely red.str£utafite 'Sum Kick' program. By Grec Browne Launch Sample program showing how you can load and execute a program in the wortbench environment, then return to the CL!. Includes source. By Peter da Silva Regexp- A nearty-pubfic-domain ^implementation of the V8 regexp(3) package. Gives C programs the ability to use egrep-styte
regular expressions, and does it in a much clearer fashion than the analogous routines m SysV. Induces source. By Hen7 Spencer Tsnip Ve7 hoe ‘cut and paste’ type utility with lots ol uses and inactions. Features a oop-up intuition control panel, multiple font and color recognition, clipboard and pipe support and a couple of utility programs.
VI .4a, source for support programs only. By John Russel UnuUti: A lew CLI utilities, including some functional^ similar to the UNIX utilities of the same names, included axe: Wc, Head, Tail, Tee, Detab, Enlab, and Trunc.
Descriptions are given in the indurted ’.doc' files. By Gary Brant Fred Fish Dlskf 3d Browser A programmer's ‘Workbench*. Atpws you to easJy and convenientfy move, copy, rename, and delete files £ dir2ct0r.es from a CLI enrironment. Aso provides a method to execute either Workbench or CLI programs.
V1,6. Update to FF134, binatyonfy. By Peler da Silva GeoTime A couple ol interesting ‘dock* type programs based on the ‘Geochran*, Observe the earth's shadow sad) across a map or globe in real-time, based on the system dock. Vf .0, binary only, shareware. By Mke Smitrwick Gprint A Wads S white graphics print utitiy tor Epson compatible printers. CommartJ-fme options allow seve,al dflerent prrt quaates and densities. Includes a couple of sample IFF fies tor printing. V2.03. Pna7 only, shareware. By Peter Chema Jed A nicely done, intuition-based editor Jia: is quite user- fnentSy. Features
word-wrap, ado-index newdi alt buffer, sptit-window. Keyooard macro, help, printing, and more. V1.G. &i.rary cniy. Shareware. 3y Dan Burris NcVirus Anoner AntS-Vfiius utiity, Ths ore features known and new virus detection, view boot beck, save and restore Doctbtocks, several ‘instaJ cptccs anJ more.
Written r assembly. Vt5fi,bina7oniy. By N«ti Wiscn RepStnng Nee late Clt utk^ lo replace any type ol stiing in any type of fie wth another stirng ot any type. VI ,0, binary only, shareware. By Luoano Bertato TrekTr.va Very race mouse-driven trivia type program tor Star Trek fans. Contains CO questions w-.th add tonal trrva disks a'valaWe from the auchcr. Binary onfy, shareware. By George Broussard Ecatflsflmm AMXLISP Amga-ized verson cl the Xlisp interpreter original/ by Dawd Betz. V2.00. includes source. By Dawd Betz. An<ga work by Francois Rouaix Baly Arnica port d the former arcade ga-me
named Cick.
Lacks sound eftects.pfwr.ised lor teter updates. VO.i. binary onfy, shareware. By Ofver Wagner Trackgr Usefii debucqng routines Sim Jar in Junction but more versatile to those of ‘MemTrace* on Fr 163. WJI track and report on calls to AliocMemi). Free Mem() [or lack thereof] among others. VC Oa (Apha retease). By Karl Lehenbauer EbflMJM AatC ‘Amga Message Center*. Scrolls a message from a text fte across tne screen cn a colortuf background.
SimHar to the ‘greetings' programs developed by European Amiga enthusiasts. V1.Q, binary only. By Foster Han Edmap A keymap editor. AJOws you to read in an existing keymap fie. Modfy it to sixt your needs, and save it as areacy-to-use keymap. Vi.O, includes source.
Autttr: G-Ees Gamesh HR13S An IFF tile containing a chart showng ever/ possbe mixture of the sixteen &as»c pa'ette coins. Aso inckxted are optimized and monochrome palettes along with several tips arid tecrrnqjes tor usng tnem with various painj programs By Otok Boume toonmerger intuticn-based program lo take any two brush fttes and merge them into an altemate-nag* type toon, V2 0. >nary only. By Terry G>ntz Sam Anc trrer IFF sound player with several command-tine options. ©cJudes several samples V:.0, binary orly, ByWcWlson Sefont Ajows you to cria,nge the system lorri with various comma,rew
ne options Cteans up an irown bugs «n FF75. V2.S, ircuctes source in C—. By Dave Kaynie FlKl f lifl Dlik 1H FtsFd A utfcty tor Amiga assembly programmers. FixFdwii read a '.FD' file and output a fite that can be INOLUDE'ed rarer than having to fink with ihs coipssa' •Amqa.Lib'. Vi.O, includes souce in assembly. 3y Peter Wyspiansto Mkib Anoner example ol busting a shared tiprary that evolved Irom ’£i.b* FF37. Aso included is a iitxa.7. Edtib, which contains several lunctbns not included in the Manx stendard libraries, includes source. By Edwin Hoogerbeets wiih C-functcrs from several afferent
audicrs PCO A subset im.pementaton of a free!)-redistributable Pascal compiler. Supports include to, external references, records, enumerated types, pointers, arrays. Strings and more. Presently dees not supper: range sypes, ihe 'with' statement or sets. VI.O. mekxdes source and sample programs, By Patrick Quad Fred Fish Disk 1&4 Bl A small brosh to lo C-code image converter, intended to be used (rom CLL VI.O, binary only. By T erry G'-h!2 CardMaker A programmers aid lo» creating carol image data that can be used in any card game that uses the standard 52 card deck. VI .0, binary only. By
Terry Gintz DPS Demo veri-on 0! A program that will allow you to take any IFF fie and save i; as a totally seil-coniaimed executable fite. Without the need tor any iFF-viewers.
VI .0. binary only. By Fosier Hal Mousel'tJ Intuition based program to allow you to change your mouse speed wincut having to go through preterences. VI.I, indudas assembly source. By Luciano Bertato Print Small print utility designed to replace the 'copy <Slename> to prt:* ccm.mand. Opens a wndow displajnng the filename being printed, length, and a stafrjs bar showing percent ampie'ed. Aso includes an abort gadget. Vi.O, binary onfy. By Luciano Bertato VacBench This amusing tttte screen hack wil ‘dean up' your WortEench screen lor you when it gets too cluttered' Binary only. By Randy Jouott
World A text adventure game similar to mo tniocom adventures ol PtaneHaU and Star cross. Oute large with a tremendous variety ol responses. Vi. 02.
Includes source. By Doug Mcdonald, Amiga port by Eric Kennedy Et£lfl5tLPlaK.lS5 Commodore IFF Tfiss Is a copy of the olficxal November 1538 Commodore IFF disk. All the fies in tw 'documents' directory are in zoo fitie 'doajmentszoo* Fred nsncisk 165 A£8k A £3000 assembler originally written m Modula-2 m 1985 and ranvrerled to C by Chariie Gibb m 1987.
Has been converted to accept metacorr,co-compatible assemble? Source code and 10 generate Amiga objects. TKiuoes source. Ths is V2.42, an update :o "Ft 10. By Brian Anderson; C transition and Amiga wort by Charie Gi&b Cards'O'Rana A simple game that lef s you push your memoy. It i s played wi to a deck ol 32 cards, grouped m 16 pars. The cares are shuffied and then cksptyed at toe oegmng of each game. You goal 15 to pek up as many pais as you can. Until there are r.o cards left on the screen. Vi.O. includes source. 3y Werner Pram Ct2 A cute program that grires tne tree toe way many people
actually do. I.E. "it's nearly ten to fve‘.
Inctodes source in assembly. By Charts Gtob SmCPM A CP/M simulator tor pie Amga Simulates an 6C80 along wtih H19 termnal emUaaon. Includes source.
Thus is V25. An update to FF 105. By Jim Catney; Amiga poa by Char.ie Gtcs and Wfi Kusche Fred RsfiPitf.iy Dskperf A dsk benctomart program wticn ruts on both Ursx and the Amiga. Ths is an update 13 FF48, with bug fixes and mare refiade measurements of toe testier read and write speeds avalable utoer the new Fast Fie System. By Rick Spanbauer. Enhancements by Jeanne Dow HackLte This is tne latest verson toe Amiga pon ol Hack, w.th lots ol Am ga specific enhancements and neat graphics. Now irdudes an easy to use installation program. Ths is HackUe Vi .0 0. Binary only. By Software OstBery Macke
A versatile cfiftnacro-key initiator based on POPCll with a unique method of‘screeri*bian)cng‘. 1 wont say more.jua 17 4! V 1.13. includes source.
This is an update to FF16I. By Temas Rotocki SetCPU A program designed to aliow [he user to detect am modily various parameters re'ated to 32 Pt CPUs, includes commands to enable or disahe me text data caches, switch cn or off the '030 burst cache line fill request, use the MMU to run a ROM image from 32-tii memo7, and to report various parameters when called from a sapt. VI.4, includes source. By Dare Hayoe FlWLFiShfiiSK 1&3 Bootlnfro This program creates a srr.a'l intro cn tne bociblcck of any disk, whch wit appear after you insert the disk for booting. The headline can be up to 23
characters. The scrolling text portion can be up to 225 characters. Vt .0, txnary only. By Roger Fisch&n DitlDtf Diffdir compares the centers cf two directories, reporting on differences sucn as Mes present in only one Oaeclory, different mod: fiction dates, file Pags, sizes, amrrents, etc. Vi.O, rcktoes ssuroe.
By Mam RirJret ExecDiS A disassem&ter comment jeneretor procram for toe 1.2 Kcfcsai ROM exec library cage.
Generetes a commenteddsassembfy 0! Me exec ibrary. Vi .0. bra.7 only. By Marius Wandei FauGro A fractal program, srriJatng & fusion-Limited Aggregation (DLA) as descrtMd ^ toe December 1583 Sctemlto American m toe Computer Recreators column. Ths program is about an order cl magnitude faster ran re ‘SLO GRO‘ program desenbsd in Scent;fc American. V1.0, incfudes source. Ey Doug Hcuck FracGen A fractal generator program that generates irectsl pictures iron 'seeds* that you create. This is urtffce any cl tne other Iractal generators* five seen. It can be used to load and display previously created
fractal pcures. NaCiti/ existing fraca'S, or create your own fractals. V 1.23. binary orJy, update to FF142. Sy Doug Houck MenoryCtock A tfeck pro5ra.n1 tnat shows the amount cf free last ram. Free chip ram. As well as the tme and date. Includes source in assembly code. Ey Reger FischSn MmRexx A simple Arexx nterface which can be easiy patched into almost any progrem. Ixtodes as an exa.mp«9 the teedraw program from Fft, Incudes »uroe. By Tomas Rokicki Nun A new dos device that behaves fike 'Nii^ txjt unlike 'Nil:*, it is a real handler. This makes it uselut in tots ol situations where ’Nil;*
carrot be used. V 0.0. includes source. By Gunnar Nor dm art TextDisplay A text display program, Eke 'mere'or hess', but about hall the size and ha notes aJ screen tcrmats (pafrnlsc, inter!ace;non-interia». Etc). V 1.1, &na7 only. By Roger RscM'm FJCd Fish Disk 139 Mackte A versatile di'macro-key initiator based on POPCLI wit a unique method ol 'saeen-Uanhing'. I won t say more, just 17 it! Versxtn 1,20. Includes source, update cl FF 187. Author: Tomas Rokicki NelHack This is pan 1 ol a rwo part dstn&Jton of NetHacK, which was too laroe to fit on a single disk, even when zoo'd. Part 2 iscn
<Ssk 190”. Botn pans, along with zoo to unpack them, are required 13 use or rebuild NetHack, V2,3, Includes source. Au¬ thor: Various; Amiga work by Oiat Seibert Lfetfl V2.4g shareware erttor. Has team mode, a com¬ mand language, menu customfeafan, and ofrer user configurabil ty and customizability features.
Binary only, shareware. Update to FF 173 Autoor; Rick Stites Gary icons A collection 0! More interesting and useful icons.
Author: Gary Rosen an LBM2lmageTakes an IFF pdure and generates a C source module which can be compiled and linked wito your program to display the picture with the intuition Drawtmage function. Binary only, by: Denis Green NetHack Ths is part 2 ol a two part d stnbution cf NetHack.
Which was too la-ge to fit on a single disk, even when zoo'd. Part 1 is on disk 189. Both parts, along with zoo to unpack them, are required to use or rebuId NetHack. V 2.3 Includes source, Author; Various; Amiga wort by Otel Seibert Fmuastjasmi BltLab Giibab 1$ a program whdh lets you expenmen; with tie bitter, to your hearts content, in relative safer/.
It opens a work&jnch window win caSaets brail ihe registers of the after, arc allows you to manipulate ndivdua) registers and perform pits on a magnified bitmap. V 1.4. an upcate to FFSa Induces source. Author: Tomas Rokicki Blk A requester makng tod employing various recursive algorithms including a recursr* paner. It lakes input text ties ana convens them to C-source lor indudng as requester deParatcns. Update to FF152. W-Ti r.z.~:j enhance"ems. Bpuoes source. Author; Siuan Ferguson FreBoctElock This tmpe fctte program reacs Px-sO arc 1 cl a bootable ds< and sares Trem. As a program life
that can be run (heaven toro-pi cr d sassrenpfed by picg-ars; ke D:S sr DSM. Includes .n assembly ode Cy; John VekJtnus Speft ApcftofaUrii^tfScnciafieeydsfriutebte saeen orieraed, interactive, soeifing wrecker.
L’poata to FFSa.w-th enhancements by Tcmas Rokdu. V2 0.02. indjde5 source. Author Pace
VV. Zisscn; enhancements ty Tomas Rckcki ?i 15 Com puter verson
0! Those ore ap ptastc puzzles with 15 wfite Dies numbered 1
through 15 anjan empty square in a 4 ty 4 arrangement This
ore is mere challenging sirce you can't solve it by just
prying out the pieces, incudes source. Author: hike Hail Fred
Fish Disk 192 Eva: Ths package atows you to manipulate
expressens. Currertly its two main functions are evaluation
and dilerentiaton, ft also does some banc simplifications
(based o,n pacem matchng] to make the result ct a
dfleremiaaon more prasentab-'e. FrCudas source. Author: David
Gay PacMan87 this is a nee iffie ‘pacman Iike' game with seme
new features iike fire prts. Stabbing knives, electro arcs
and flame throwers, dati must be avoided.
Has three levels ot difficulty, easy, medium, aroJ ha*d. Sounds Can be toggled on or off Keeps a record ol the top ten scores. Shareware, tx'nav cnty. Author: Steve Jacobs and Jim Boyd ReSourceDemo A demo version ot ReScurce, an interactive qisassemtler tor the Amiga. This j$ a complete version except trat the ’save’ features have been disabled. V056, bra-y oriy. By: GlenMcDarmd Fred flsh Dtek 191 KeyMapEd Altows you to change tie KeyMaps used with SetMap This is a W leaJ/ed edfor proving support lor nomaLsfriTg and dead keys. The keyboard repr wanted s from an A200C A5O0 Put 4 is fufy
w-T.patibfe wo AI 300 keyboards VI.02, rttfow source Auror Tn Fnesi Zc Tits ts a no<5 fed verson cf re Soi^cnC compier twnFFl7l. 5 has been rrcdffed to generate code compatible ttTi re A6Sk assembler from FF i 86 and a new frortend confrQi program makes it easy lo use like fie UNIX *cc" ffcntend.
V1.01. includes source, by; Johann Ruegg; Amiga work by Joe Montgomery FjttFtthPiSMfl Uoria A single player dungeon amulafioa The object of the game is to defeat me BaLtg. Which lurks in me deepest levels ol the dungeon. You begin at the town level above the ckngeon, where you may acquire supples, weapons. Armor, and mageal devices by bartering «rth various shop owners, before oescendng nto the dungeon lo do batte Amiga enhancements inouJe fx* down menus, grafnes mode, pickup mode, a continuous move mode, a real time mode, a message wait time mode, as welt as olher modifications lo improve
overall ptayaWily and to lake advantage ol re unique leatues of the Amiga, V3.Q, Unary only, requires ai least 1Mb of memory. Author; Robert ¦ Alan Koeneke and others. Amiga version by Richard Henderson and others Frrt nan Disk 195 UcrobMACS Versong.lO olDartel Lawrence svanartt of Dave Conroy's micwnacs. Ths is an update to re verecn released ontfek itfk New foalurcs inctode mrttpfe marts, more fuxton key support, a bener crypt algorithm, and end of word command, a command line swrth lor setting erweomen; variables, new hooks fw macros, a command to strip rziirg whitespace. International-
zatcn features Ike foreign language message support, horizontal wirtocw scrolling, much faster search algoritim, Amiga intiition support, and more. Indudes source and externa ve online documentation. Author Dave Conroy, MANY enhancemeras by Daniel Lawrence RimPcs These are some of the most samng dp: zed pictures yet for re Arn^a. They were scanned at a resolution cf 4D96 by 2SCC poets. 36-Uts per puei. On an Ekortx 1435 side scamer, cropped, gamma corrected, scaled, and converted to Amiga IFF HAM 3es. They are dspayed with a specs IBM loader diat handles overscan HAM snages.
Includes source for the osptay program. Author: Jonathan Hue Exed-Rah Pish 137 Clays Create a tags fife Irom the spepfed C. Pascal.
Fortran, YACC, lex. Or Ssp sources A tags foe can be used by a cooperating editor to quickly locate speoffed objects m a program's saxte code Berkeley V4.7, includes source. AuJty; Ken Arnold. Jim Kjeckner. And Bjl Joy Ported to Amiga by G-R. (Fred) Waiter Fnd Find is a utility which searches lor lies mat satisfy a given boolean expression ol attributes, starting Irom a root pathname and seartftng recursively down through re hierarchy ol the life system, very much like the Unix find program. Vt.2. includes souroo, Update IOFF134 Author; Rodney Lewis Fa Hunk A program BmtxSfy executable files
lo allow them to run n external mewy. B forces aO DATA and BSS hunks in the fife to be loaded in© CHIP memory. CODE hunks will sal load nto FAST ram tf avaiibfe. New teaa/es ndude an riieractive mode to select where each DATA or BSS hunk wJI load into memory, support for overlays, support for AC BASIC cor,pied programs, and support lor new hunk types as used by tAnk’. V2.1, binary orty.
Update to FF36. Author D J. James Nro Another roff styte text formatter. Ths «s verston 15, an update b Ihe version released on disk 79.
New features rcfude generation ol ANSI ISO cooes tor bold, cafes, and unoertne. More than one tomasng command on a Int, longer macro names, and many more formatting commands ©dudes source Aurer Unknown, posted to usenet by Atan Vymefeik Mart/ enhancements by Cxaf Setoert Stevte A puttee domain dene cf he UNIX Vi‘ edtcr Supports winocw-srting, avow keys, and he help key. V3.35a, indudes source Update to Ffl 66- Author: Various, Amga work by G R. (Fred) Walter faannmm Charon Charon is Bradfeys onfry lor the First Annual Badge KiSer Demo Contest The teil of the demo was wnaen Dy Lord Dunsany
(long before die Amiga). Bradley created me ilustralions and animation. The sotnd track is a traditional Scoasn tune The A-ran 3oar by; Lod Dunsany (1915).
Bradley Schenck (1568) Fred F.sft DisX 139 Asm pto x Ah implementation cf me Simple x igorfrn for sofvrg inear programs, it uses the standardized MPSX-locnat for input lata fifes. Vt.2. includes source. Author: Stelan Forster Csh V3 02a of a csh Gke shel derived Irom Matt Dillon's shell. V2.07. Indudes many new or improved commands, some bug fixes, elc. Includes source.
Author; Matt Dillon. Steve Crow, Carlo Borneo.
Cesare Dieni MiDlscfi A program a transfer sound samples between the Amiga and a Roland S-220. Vi .0, bnary only.
Author: Dtetef Bruns Pyro A screen blanking program Itat goes beyond the normal blanking process. When mere are no input events, pyro akes eve" and starts a ittJe f reworks a splay in color. Vi.i, binary orty. Author: Steve Jacobs and Jim Boyd SrvpDemo Demo version t ,23 ol sgnal processng program sold by Dgital Dynamics, Binary only, Author; John Hobson Viewer A very smal program for Ssplaying IFF pcrjes of any resolution Tffrs ones written in assembly code and 15 orty 983 bytes long Bnaryonfy.
Auttor: Mike McK&rt* ftotBongAgam Dr GandaTs ensry tor He Frst AixaJ Badge fiMf Deno Contest t is an nteriaced HAM animaton win reel/ integrated scow erects t is a great visual pui on the on^nalBoing demo „ but lo say anyrr ore would run he effect Banary orty. Requires 1 Mb ol memory. Author: Dr. Gandafl (Eric J. Ftescher, MD) Tank This is Vmcenrs entry lor me First Annual Badge Kflef Demo Contest ltisanan«ma&onola ¦faMark simulator", wh sound effects and a cute twst 3nary onfy. Author: Vnceoi H. Lee Users Groups!
We want to here from you.
Frafl Raft aiait 2P1 Draco Update to Chrs Gray's Draco dtstftudon for me Anjgafnhancenerts ndjfle support tr fcatng poirt register var^hfes. More opfuaxn.
Rrprcvtd ctf. Returrstandard, et yi 2. An update to FF76. Requires docunwiibon horn FF77 so complete the dstrtsubcn kit. &rary criy. Audvcr.
Chns Gray Amazing Computing understands that the momentum and excitement behind die Amiga is generated at the Users Group level, Users Groups are the backbone of informa¬ tion exchange among Amiga users; AC wants to maintain tlic most complete and up to date list of Amiga Users Groups and BBSs in the world. We publish these lists in our product guides, AC’s Guide to the Amiga, and will be printing the updated lists in an upcom¬ ing issue, htformation received before July 6 will be printed In tJielaU ylC’s Gttide to the Amiga.
If you would like your group to be listed, please send the following information:
- Group name.
- Address and phone number.
- Point of contact.
- Meeting dates, time and place.
- Your group’s BBS and BBSs your group uses.
- If you have a BBS, please include the name, phone number, and
the sysops name.
- Send us your newsletter, we enjoy reading I!”''' tbm.: Send to:
, || Amazing Users Unite ' : PiM Publications, Inc. ; ? >
P. O. BOX S69 : v f\ | Fall River, MA 02^22-0869 J ' DropCtotn
DropClolh tea you place a pattern, a 2 biplane FF image or a
combination ol a partem and image, nto srw WorkBench backdrop.
This is verson 2.4, an upca:e to verson 2.2 on disk 123.
Shareware, binary orfy Author: EricLawtsky "xm JavcFonts A
wtoe bunch ol new torts Irom Robin Upasha.
Version 1.0. Author: fiobri LaPasha VH VLTubotha VtiOOemualorand aTeklreox (4014 pfes subse! Cl 4105) errtiatcr, cmenBy in use ai SLAC (Stanlord Linear Acceferator Center).
Aflhcuqh the VT100 part was Originaly based on Dave weckef et al.'s VttOO, many ennancements wore nade. The program requres ARP, and it has an Arexx port XMODEM IkL'CRC and Kermit protocol support also included, Version 3.656. bnary only. Author Wjy Langeveld Fffrtf Rsn Pi5K 203 Examples Assembly and C code examp^s, induing some old lavontes (lie sprechtoy aid yacht3) downcoded to assemdy language Indudesa redscement lor the official a udto devtoe, an example ot creatng a subfojk. A rewrite m as5emtyy ol R. J M«fs ffe requesser, an example olmsa&ng a custom input handter ahead of mtuson, and
more. Author: Jim Fore & Jeff Gla" Gi/usGutoe The source fifes lor ol examples pub*shed in fw
• Guru s Guide, Mediation 11: toterrupts' by Cari Sassenrath, the
architect ol the Amiga's towTevd ndtitastong operating system
and designer ol Exec.Autor; Cart Sassenraffi isam A Lbrary ol
routnes to access relaiona! Date base systems using re index
Sequenaal Access Method (ISAM) Ttvs 4 bete ver*ai 0 9, binary
orty.Aunor. Ka Cxver ftoog Fred Rsh Disk 2M FxeRaq A svrpw fJe
requester, written as an exenose by r» aurw ts see how easy i
wodd be (it wasn’t), toctooes source. Author: Jonathan PotK
GnuGrep The grep program bom re GNU crcyea. Replaces grep
igrep. Egrep, and bmgrep Currently does ret cipand Anrja style
wildcards, so i you wish to scan xUtpfe fifes you wifi need to
use I with a shell fa! Does this lor you. Vers*:n 13. Mdudes
source. Author: Mika Haertet. James Woods.
Arthur Ofoon, Richard Sanman. Doug Gwyn. Scot!
Anorson. Henry Spencer HAMCu instaH a custom copper tsi for ihe cuireraaave view [usuaDy wcdibench) that corta-ns arithe e6ars from OxCQO to Oxfff. A neat effect and ah easy way to show clt the cofer capaitfties cf the Amiga, inciudes sores. Author: Jonathan Pcaar image Ed An shareware icon editor subm.tied by the author tor inclusion m the library. Suggested shareware donation ol S20. Version 5.8, twiary only. Aulhor: Jonalkin Potter JPCtock A shcrt dock program thai is just packed with lea tires. Indudes soiree Autlwr; Jonathan Pober MouseBounco A short hack/game jnai makes your mouse
pointer bourse around me screen The object is to dose the Mane Source window and e»i ihe game.
Tme you dck Ihe mouse budon, the porter speeds up. Indudes source. Author. Jcnaftan Pocer PopDir AsmaJusKywhichTscpscpen'tohelpyoutookat he contents of a pamofer dreaory on demand.
Vewi t.4. indudes source. Auhor: Jonathan Potter Poplnfo A smal utftty wrttch 'pops open' to give yw mtormaton about Ihe status ol your devices and memory Version 2.9, inciudes sauce Auhor: Jonahan Potter T eacher leader is a short, sir pie hack, i rcn'i spoil he Krbyteiingyqjwhatitdoes todudes source.
Auhu: Jonathan Potter Fntinapa as Baiy Atiga port c< he former i-cade game rarec do, Ths versicr new has soukJ effects Verston
II. An update to the verscn released on dsk 181.
Bciary orty. Shareware. Author Ou-rer Wagner BaltteForce A nicely done shareware game, subm tied by ihe aurer. Hat simulates combat be vreen two cr mere gant, robot-Lke machines. Bnary only, version 3 01. Author: Rasprt Reed Chess A ped cl a chess game posted to Usenet Ths is an update to Lie version fast ncijded on dsk 96 ft has been upgraded lo use an Amiga Intuton interface. Versan 25, txnary orty. Airihor John Starback; ported a Amiga by Boo Latvian Version 20 upgrades by Alfred Kaufmann EaaLBitLjamg Brewruan A demo based on both fractal theory and browman melon, includes source Author
John M Osen Hawk A stereo imago ol a hawk. Requires red green sicreo glasses to view. Author: Unknown (no documentation indudad) MamFkck Treats alt Iho memory in your Amga like it was part ol a biplane inside a graphics display. Provides sort ol a graphical pcturo of your memory usage.
Binary only. Author: Jim Webster PeX A demo cl the various graphics capacities of re Amga. Author Unknown (no documentation included) PtetixeGartJen Arofffefdemo.
Apoarertfy in compied basic Aubw: Ur*rxjwn{rto documentation rctoded) StereoDemo A demo ol r.efecsccpc graphics, written in assembly language Requires red'oreen stereo glasses lo view, includes souces Author: David M McXinstry Triple Three demos cf some ol Ihe Amca's grapftcs and sotnd capabJtties. Bna7 orty. AuJior: Tomas RolxJu FrMfiinD^ a?
Co/Ote Gene semy to re tS63 Badge Kiier Demo cortest. A very cute (and large) tfinafen, Requres about i«0 boos ol osk space, so it is d sfrfouted «'am fcrmaf Autha Gene Brawn Fred Fish Dttk 206 Asterccfieto Ths u UrtraeTs erery tor he 1S3B Badge KxfefDemflCortest. Ft s a targe anxnaticn ol a ipacocrafr Dying mady ffvough an asterofo fifed (chased by unseen foes) mt includes a couple o!
Near misses. Author: Mchaei Powea Fmi am phi as Bowi This 0 Vflfn's ertry lew the 1983 Badge Kitfef DemoCcrtesL t is a SaApt Arwrdte arematon ret shows rvee cfeored bats Yog Jn orcfes above a mirrored bow. Renoerrig re anmaon took about 2 wfeeks. DisfriDLted ai zoo tormat because d 45 sue (zoo program inducted for easy unpacking). Aurer: Vem Staats Dps A program designee to work wth re PnntScrpI program, a commercial PostScript interpreter lor the Am;ga, to prov-de a page prewwer, This is verscn 1.1 and ncfobes source. Author: Ajfen Norsloo Fred nafi Dak m Cat A very ncefe ctore saentifc
programmer ptottef caiaAaior. The toentfc portion has rest of re operators toune on re more pctUr r^ncTfeds The programmer pemnn has al re specraf he*.’ binary, aeons.1 ccmtrscns as wel as regster operations ASL. RDL. LSI. AND. Off. XOR.
Etc. The plotter porccn wi plot equations. Oner features indwte 26 (WfflOriW. M mouse or keyboard operation, pulldowri menus, and eonzaflon. Version 3 0. Binary only. Author: Jimmy Yang UbelPrrt A program ret allows you to eassy print labels lor your disks. Version I i, shareware, brery only (source available from aufrxw). Author Andreas Krebs NuHand An animaSon cf a hand with (ngemals scrapeing on a destocp. Indudog sooto effects, ttws is Bryan sensy tor re 1938 BaOTe Kafer Demo Contest Brtary crty Autnor. Bryan Carey GaJrran n ConclJSian To the best of our knowledge, re nationals r flks
ii&rary are freety diS-toutabfe. This means Shey were eret pubWy posed and placed in re puote ooman by re.r Him, sr irey have restrttions published n thex fifes lo which we ha« atrered. I you become »ware of any ^olaton ol re aufora' wishes, please contaa us by mai.
IMPORTANT NOTICE!
This >st is compiled and published as a service to to Commodore Amiga community for informational purposes only. Its use is restricted to non¬ commercial groups only! Any duplication for com¬ merce purposes is strictly forbidden. As a part cf Amazing Computing™, this list is inherently copy¬ righted. Any infringement on this proprietary copyright without expressed written permission of the publishers will incur tne full ‘orce of legal actions.
Any norvcommercal Amiga user group wishing to duplicate this Lst shoud cortact:
P. M Publications, Inc. P 0 Box 869 Fall River, MA 02722 PiM
Publications Inc. is extremely interested in helping any Am:ga
user groups in non-comme'cial support for the Amiga.
You Haven't Seen AC? Look What You Missed!
February 1989 Volume 4.2 AMAZING FEATURES MovieSeiten The Next Generation by Steve Gilhnor A new level in Amiga animation.
AmiForum by Steve Pietroimcz The Amiga pays a mid-winter visit to Mickey's hometown for the first regional Amiga show.
Max Morehead Interview by Richard Rae Rick talks to the creator of Moviesetter.
A Common User Interface for the Amiga by Jim Bayless Does the Amiga need a kinder, gentler interface? Vote now!
AMAZING REVIEWS Supcrbase Professional by Marion Deland A user's look at Superbase Pro, Microfiche Filer Plus by Ronald Courrier A multi-tasking database that uses Arexx to work with other programs Torch 7081 by Jeffery Scott Hall Fast action, and smooth graphics AMAZING PROGRAMMING SPY by Steve Faiwiszewski Programming intrigue in Modula -2 Sync Tips hr Oren Sands Getting inside the genlock.
On tlic Crafting of Programs by D J. Hankins Do we need a common standard for C programming? Look ANSI.
C Notes from the C Group by Steven Kemp An introduction to unions The Command line by Rich Falconburg ED, your Workbench Screen Editor An Introduction to Arexx programming by Steve Faiwizeivski Climbing the Towers of Hanoi.
Crunchy Frog by Jim Fiore Amiga-specific C programming.
AMAi^Nfi_CQLUMNS Super Bug Bytes by John Steiner A double dose of bug repellant.
New Products by Michael Creeden What's New? Deluxe Print II, The Talking Animator, 3 digit fun, and more.
Roomers by the Bandito Big resignation at Commodore, big budget cuts at a major, and the Bandito’s fearless predictions.
March 1989 Volume 4,3 AMAZING FEATURES Falcon reviewed by Joe DiCara Latest from Spectrum Holobyte's hangar Air Warrior reviewed by Michael Mantino Hook up via modem and battle it out with international opponents!
Carrier Command reviwed by Lawrence Lichtmann Admiral Lichtman signs up for carrier duty World of Commodore Toronto by Ed Berko vitz Ed files his report from Toronto Fractal Fundamentals by Paul Castonguay Experiment on the edge of a new science by creating your own fractals AMAZING REVIEWS Image Processing with Photosynthesis by Gerald Hull An experiment with a repertoire of AI image-processing techniques Gizrnoz 2.0 by Stei'e Carter Steve Carter reviews version 2.0 of Digital Creations' box o' fun AmigaTEX by Barney Schwartz A page description language from Radical EyE software flickerFixer
by Steve Bender Steve gives us a clear perspective on Microway's flickerFixer AMAZING PROGRAMMING Benchmark 1: Fully utilizing the MC68881 by Read Predmore Part I: Turbocharging the savage benchmark Breaking the Bmnp Barrier by Robert Dasto Streamline your AmigaBASIC library access with Quick_Lib Double Play by Robert D'Asto AmigaBASIC program yeilds double vision.
C Notes From the C Group by Stephen Kemp A walk through preprocesor control lines AMAZING COLUMNS New Products...and other Neat Stuff by Michael Creeden 3-M-dous! The latest from MichTron.
MicroEd and Mindscape The Video Desk by Larry White The .Amiga meets Nikon Camera Roomers by Toe Bandito Magneto-optical disks on the Horizon?... Amig., first stop for WordPerfect 6.0?...and the HAM paint wars continue.
April 1989 Volume 4.4 AMAZING FEATURES AmiEXPO NY ’89 by Steve Gilhnor Amiga Lakes a bite out of Lhe Big Apple.
AmiEXPO Art and Video Contest Winners by Steve Jacobs Mouse & monitor replaced brush & canvas in this first-ever AmiEXPO art event.
Adding the Not-So-Hard Disk by J P. Twardy Short on memory? Installing a Hard Drive was never so easy—or so cheap.
Hard Drives—an Introduction by Jon A Boulle A straightforward, “no-Boulle" comparison of Hard Drives.
AMAZING REVIEWS Tax Break by Kim Schaffer OXXTs new tax program.
Tire Max Hard Drive Kit by Donald IP. Morgan Another inexpensive Hard Drive installation project, this time using Palomax’s Max kit.
Menace reviewed by Jeffrey Scott Hall Blast aliens & destroy the evil Draconia.
AMAZING PROGRAMMING Sync Tips by Oran J. Sands Oran presents a clearer picture regarding video and computer resolutions.
Passing Arguments by Brian Zupke AmigaBASIC subprogram explains step-by- step how to pass data from the CLI lo AmigaBASIC.
C Notes from the C Group by Stephen Kemp A humorous view of the wacky world of programmers.
Creating a Shared Library by John Baez Program for increased Amiga productivity.
MultiSort by Steve Faiwiszewski Put your data in its place with this ultra organizing program.
AMAZING COLUMNS New Products and Other Neat Stuff by Michael Creeden Face-off with Gretsky, play Picasso with Basic An Encoder, balance your Desktop Budget, plus more.
Snapshot by R. Brad Andrews Four exciting .Amiga games are reviewed Roomers by The Bandito Amiga developers go for the bucks, Commodore stock up, & Paint Wars.
Bug Bytes by John Steiner Soft-Logik’s PageStream, and more, Amazing Reader Service Card Want to know more about Amazing Computing Advertisers and their products? Here’s your chance! Complete the card below and drop it in die mail (U. S. only). We will process your request and forward it to die appropriate advertiser.
- just like all the services of Amazing Computing: Your Original
AMIGA Monthly Quick, easy, and efficient- Resource.
Reader Service Card ST. ZiP E Which type of articles do you tiketo sec in Ama ztngCompuLmg?
Q 10, Programming How To's O 11. Business HowTo's O 12. Video Artido O 13 GrapfucsArtides O 14 Music Articles O 15. Hardware HowTo's O 16. PD5 Updates O 17. Interviews O 18.Other Q 4 Soon O 5. NotYei O 6 Just Looking Q 1. 'C language O 2. Forth language 3 Modula-2 Language 4 Assembly Langu a ge
5. BASIC Language fi Game Rev iews
7. Business Reviews
8. Hardware Product Reviews
9. Software Product Reviews iter
7. Modem
8. MusicTool
9. Video Prcduct
10. Other O 8 Spreadsheet O 9 Dalaba.sc O 10. Financial O 11.
Video O 12 Graphics O 13. Music O 14 Other G, Arc you a
subscriber lt> Amazing Computing?
O 1. Yes O 2. No Reader Service Card AC June '89 Valid Until 8/30/89 see page 96 for reference numbers D Vt “here do you buy you r Amiga products?
O 1. Local Amiga Dealer O 3 Manufacturer O 2. Discount Department Store O 4. Mailorder O 1 Amiga 500 O O 2. Amiga 2000 O O 3- Memory Expansion O O 4 Hard Drive O O 5 IBM Emulators O (Sidecar or Brldgcboird) O », XI'Language O 2. Forth Language O 3 Modula-2 Language O 4 Assembly Language O 5 BASIC Language O 6 Entertainment O 7. Telecommunications
B. Whit Amiga hardware product do you plan to buy next5 u Do you
own a n Amiga5 O 1. Amiga !000 O 2, Armga 500 O 3 Amiga 2000 C
What Amiga soFl wa re product do you p la n t o buy next*
Name_ Street_ City_ Country, b
6. Pm F Which articles wou Id you I ike to see O 1. T7 Language O
2. Forth language O 3, Moduli-2Language O 4. Assembly Language
O 5 BASIC Language O 6. Game Reviews O 7 Business Review's O 8
Hardw-arc Product Reviews O 9. Software Product Reviews more
of in Ana zing Computing?
O 10. Programming! Law To s O 11. Business HqwTo’j O 12 Video Articles O 13-Graphics.\rtidcs O l4.MusicAnicles O 15. Hardware HowTo’s O 16. PDS Updates O 17-lntcrviews O 18 Other 101 101 102 103 104 105 221 222 223 224 225 106 107 108 109 no 226 227 228 229 230 111 112 113 114 115 231 232 233 234 235 116 117 113 119 120 236 237 238 239 240 121 122 123 124 125 241 242 243 244 245 126 127 128 129 130 246 247 248 249 250 131 132 133 134 135 251 252 253 254 255 136 137 138 139 140 256 257 258 259 260 141 142 143 144 145 261 262 263 264 265 146 147 148 149 150 266 267 268 269 270 151 152 153 154
155 271 272 273 274 275 156 157 158 159 160 276 277 278 279 280 l6i 162 163 164 165 281 282 283 284 285 166 167 168 169 170 286 287 288 289 290 171 172 173 174 175 291 292 293 294 295 176 177 178 179 180 296 297 296 299 3m 131 182 183 1S4 185 301 302 303 304 305 186 187 188 189 190 306 307 308 309 310 191 192 193 194 195 511 312 313 314 315 196 197 198 199 200 316 317 3IB 319 320 201 202 203 204 20S 321 322 323 324 325 206 207 208 209 210 326 327 328 329 330 211 212 213 214 215 331 332 333 334 335 216 217 218 219 220 336 337 338 339 340 AC June '89 Valid Until 8/30/89 see page 96 for reference
numbers Name_ Street_ ST. ZiP City_ Country.
EL Which ty pe of articles do you lik e to see L Do you own an Amiga?
O 1. Amiga 1000 O 2. Amiga 500 O 3 Amiga 2000 O 4. Soon O 5 Not Yet O 6. JustLooking What Amiga hardware product doyou plan in buy neat?
O 6. Punier O 7 Modem O B MusicTool O 9- Video Product O 10 Other Q I Amfgt 500 O 2 .Amiga 2000 O 3 McmoryExpansion O 4 Hard Drive O 5 Jll.M Emulators (Sidecar or Bndgebo a rd)
F. W hich articles would you like to see O 1 XT Language O 2.
Forth language O 3 Mixlula-2 Language O 4 Assembly La nguage O
5 BASIC language O 6 Game Reviews O 7, Business Reviews O 8.
HardwarcPnxluci Reviews O 9. Software Prod act Reviews
G. Arc you a subscriber to AmazingCompuling’ O 1. Yes o 2 No
C. What Amiga software product do you plan to buy next’ O 1. XT
Language O 2. Forth Language O 3 Modula-2Language O 4 Assembly
Langu age O 5 BASIC Language Q 6. Entertainment O 7. "1
clccommunjcaliam O 8 Spreadsheet O 9. Database D 10. Financial
O II Video O 12. Graphics O 13. Music O 14.Other
D. W here do you buy your Amiga produ cts?
O 1. Local Amiga Dealer O 3 Manufacturer O 2. Discount Department Store O 4 Mu! Order !
O 1. XT Language O 2. Forth Language O 3 Modula-2 Language O 4 Assembly Langu age O 5 I1A5IC Language O 6. Game Reviews O 7, Business Reviews O 8. 1 lardwareProduct Reviews O 9. Software Produ a Reviews in Amazing Computing?
O 10 Programming HowTo’s O 1U Business How To’s O 12. Video Articles O 13 .Graphics Amdes O 14 Music Articles O 15 1 lardwarc I low To’s O 16 PDS Updates O 17. Interviews O 18 Other more of i n Amazing CompuUng?
O 10 Programming How To's O 11. Business 1 low To's O 12. YideoAiudcs O 13. Graphics Articles O 14. Music Articles O 15 Hardware How To's O 16. PDS Updates O 17. Interviews O 18. Other 102 101 102 103 104 105 221 222 223 224 225 106 107 108 109 no 226 227 228 229 230 111 112 113 114 115 231 232 233 234 235 116 117 I IB 119 120 236 237 238 239 240 121 122 123 124 125 241 242 243 244 245 126 127 128 129 130 246 247 248 249 250 131 132 133 134 135 251 252 253 254 255 136 137 138 139 140 256 257 258 259 260 141 142 143 144 145 261 262 263 264 265 146 147 148 149 150 266 267 26fi 269 270 151 152
153 154 155 271 272 273 274 275 156 157 158 159 I60 276 277 278 279 280 161 162 163 164 165 281 282 283 284 285 166 167 168 169 170 286 287 288 289 290 171 172 173 174 175 291 292 293 294 295 176 177 178 179 180 296 297 298 299 300 181 182 183 184 185 301 302 303 304 305 186 187 188 189 190 306 307 308 309 310 191 192 193 194 195 311 312 313 314 315 196 197 198 199 200 316 317 318 319 320 201 202 203 204 205 321 322 323 324 325 206 237 208 209 210 326 327 328 329 330 211 212 213 214 215 331 332 333 334 335 US 217 218 219 220 336 337 338 339 340 Reader Service Card Want to know more about
Amazing Computing Advertisers and their products? Here's your chance! Complete the card below and drop it in die mail (U. S. only). We will process your request and forward it to the appropriate advertiser.
And efficient—just like all the services of Amazing Computing: Your OriginalHAf/GA Monthly Quick, easy Resource.
R Reader Service Card AC June ’89 Valid Until 8/30/89 see page 96 for reference numbers Name_ Street_ City_ Country.
101 102 103 104 105 221 222 223 224 225 106 107 108 109 110 226 227 228 229 230 111 112 113 114 115 231 232 233 234 235 116 117 tie 119 120 236 237 238 239 240 121 122 123 124 125 241 242 243 244 245 126 127 128 129 130 246 247 248 249 250 131 132 133 134 135 251 252 253 254 255 136 137 138 139 140 256 257 258 259 260 141 142 143 144 145 261 262 263 264 265 146 147 148 149 150 266 26?
268 269 270 151 152 153 154 155 271 272 273 274 275 156 157 158 159 160 276 277 278 279 230 161 162 163 16-1 165 281 232 283 234 285 166 167 108 169 170 286 287 288 289 290 171 172 373 174 175 291 292 293 29-4 295 176 177 178 179 180 296 297 298 299 300 181 182 183 184 185 301 302 303 30*1 305 186 187 188 189 190 306 307 308 309 310 191 192 193 194 195 311 312 313 314 315 196 197 198 199 200 316 317 318 319 320 201 202 203 204 205 321 322 323 324 325 206 207 208 209 210 326 327 328 329 330 211 212 213 214 215 331 332 333 334 335 216 217 218 219 220 336 337 338 339 310 ST. ZiP
E. Which type of articles do you like tosecin Amazing Computing?
1. DoyoumninAmiga’ O I, Amiga 1000 O 2. Amiga500 O 3- Ami gi 2000
O 4. Soon O 5 NoiYd O 6. Just Looking O 10 ProgrammmgHow'To's
O 11.Business HowTo's O 12. Video Articles O H.GrapftiesAnides
O H. Music Articles O 15- Hardware HowTo's O 16. PDS Updates O
17. Interviews O 18. Other more of in Amazing Computing?
O 10. Progra mming 11owlo’s O 11. Bum ness I low To's O 12. Video Articles O 13 G raphics Articles O 14. Music Articles O 15. Hardware HowTo's O 16. PDS Updates O 17. In terviews O 18. Other O !. *C’Language O 2. Forth language O 3. Mcxiuia-2 Language O 4. Assembly Language El. What Amiga hardware produ a do you plan to buy need?
O 5 O 6.
O 7.
O 8.
O 9.
BASIC language GameRevicws Business Reviews Hardware Product Reviews Software Produ ct Reviews O 6. Printer O 7. Modem O 8. MusicTool O 9. Video Product O 10 Other O 1. Amiga 500 O Z Amiga 2CO0 O 3- Memory Expansion O 4. I lard Drive O 5. IBM Emulators Csidecaror Brkigeboard)
F. Which articles would you like to see O 1. "CLanguage O 2-
Forth Language O 3- Modula-2 Language O 4. Assembly Language O
S. 11ASICLanguage O 6 Game Reviews O 7. Business Reviews O 8.
Hardware Product Reviews O 9. Software Product Reviews C What
Amiga software product do you plan tobuy next?
O 1. X? Language O 2. Forth Language O 3. Modula-2 Language O 4. Assembly Language O 5. BAStCLanguage O 6. Entertainment O 7. Telecommunications O 8. Spreadsheet O 9. Daubasc O 10. Financial O 11. Video O 12. Graphics O 13. Music O 14. Other D, Where doyou buy your Amiga products?
O 1. Local Amiga Dealer O 3. Manufacturer O 2. DiscountDepanmcmStore O 4. Mailorder G Arc you a subscriber to Amazing Computing?
O 1. Yes O 2. No 101 Reader Service Card AC June '89 Valid Until 8/30/89 see page 96 for reference numbers Name_ Street __ City_ Country 101 102 103 104 105 221 222 223 224 225 106 107 108 109 110 226 227 228 229 230 ill 112 113 114 115 231 232 233 234 235 116 117 118 119 120 236 237 238 239 240 121 122 123 124 125 241 242 243 244 245 126 127 128 129 130 246 2-17 248 249 250 131 132 133 134 135 251 252 253 254 255 136 137 138 139 140 256 257 258 259 260 Hi 142 143 144 145 261 262 263 264 265 146 147 148 149 ISO 266 267 268 269 270 151 152 153 154 155 271 272 273 274 275 156 157 158 159 ifio
276 277 278 279 280 361 162 163 164 165 281 282 283 284 285 166 167 168 169 170 286 287 288 289 290 171 172 173 174 175 291 292 293 29-1 295 176 177 178 179 180 296 297 298 299 300 181 182 183 184 185 301 302 303 30-1 305 186 187 188 189 190 306 307 308 309 310 191 192 193 194 195 311 312 313 3H 315 196 197 198 199 200 316 337 318 319 320 201 202 203 204 205 321 322 323 324 325 206 207 206 209 210 326 327 328 329 330 211 212 213 214 215 331 332 333 334 335 216 217 218 219 220 336 CM ¦JJ -I 338 339 340 ST. ZiP
E. VP lu ch type of articles do you Ukcto scein Amazing
Computing?
O 1. "C Language O 2. Forth Language O 3- Modula-2 Language O 4. Assembly Language O 5. BASIC Language O 6. Game Reviews O 7. Business Reviews O 8- HardwareProduct Reviews O 9. Software Product Reviews
A. Doyou own an Amiga?
O I • Amiga 1000 O 2 Amiga 500 O 3. Amiga 2000 O 10. Programming How To's O 11.Business HowTo's O 12.VidcoArticlcs O 13.GraphicsAriicles O 14.Music Articles O 15 Hardware HowTo's O 16 PDS Updates O 17. Interviews O IS.Other O 4. Soon O 5 Not Yet O 6. Just Looking What Amiga hard wa rc prod uct d o you plan to buy n ext?
O 6. Printer O 7, Modem O 8. MusicTool O 9 Video Product O 10. Other O 1 Amiga 500 O 2. Amiga 2000 O 3 Memory Expansion O 4 I laid Drive O 5. IBM Emulators Csidecaror Bridgeboard) more of in Ama zing Computing?
O lO.ProgrammingHowTo's O 11. BusincssllowTo's O 12. Video Articles O 13-Graphics Articles O 14. Music Articles O 15Hardware HowTo's O 16. PDS Updates O 17. Interviews O 18. Other
F. Which arti des would you like to see
1. “C Language
2. Forth Language
3. Modula-2 Language
4. Assembly Language
5. BASIC language
6. GameRcvicw5
7. Business Reviews Hardware ProduttReviews O O O O 4.
O 5.
O 6 O 7.
O 8
C. What Amiga software product do you plan to buy next?
O 8. Spreadsheet O 9- Database O 10. Financial O II.Video O 12. Graphics O 13. Music O 14 Other O 1. C Language O 2. Forth Language O 3- Modula-2 Language O 4. Assembly Langu age O 5. BASIC La ngu age O 6. Entertainment ? 7. Telecommunication': O 9. SoftwareProduetReviews
G. Arc you a subscriber to Amazing Computing?
O I. Yes 0 2 No D Where do you buy your Amiga products?
O 1 Local Amiga Dealer O 3 Manufacturer O 2. Discount Department Store O 4. Mailorder Subscribe and More!
Amazing is now available by Visa and MasterCard dial 1-800-345-3360 or use the form below.
Subscribe TODAY and save over 49% on Amazing Computing!
Please use this order form when subscribing to Amazing Computing™, ordering Back issues, or ordering Amiga™ Public Domain Software Name___ __ Street_ City__St,_Zip_ 'Charge my ? Visa ? MC #_ Signature_ . Expiration Date _ . All Charges are subject to a .00 minimum.
PROPER ADDRESS REQUIRED. In order to expedite arid guarantee your order, ail larga Pubiic Domain Soltware orders, as well as most Back issue orders, are stepped by United Parcel Service UPS requires Uiat all packages be addressed to a street address for correct delivery.
Please circle the appropriate item: New Subscription Subscription: $_ Renewal Please start my subscription to Amazing Computing™ with the next available issue or renew my current subscription, i have enclosed .00 tor 12 issues in the U.S. (.00 Canada and Mexico, .00 foreign surface). All funds must be in U.S. Currency on a U.S. Bank Back Issues: .00 each US, .00 each Canada ana Mexico, .00 each Foreign Surface.
V012.1 V01212 Vol3.11 Vol2.2 Vol3.1 Vol3.12 Back issues: $ Please circle your Back Issue choices below: Voll.1 Volt.2 Vo! 1.3 Voi1.4 Vol1,5 V0I1.6 Votl.7 VoH-8 Vdt.9 Vol2.3 VolS.4 Vol£,5 Vol2.6 Vol2,7 VoS2.8 Vol2.9 V0I2.IO Vo!2.11 Vol32 Vol3.3 Vol3.4 VoJ3.5 Vol3.6 Vol3.7 V0B.8 Vo!3.9 Vot3.10 Vol4.1 Vol4.2 Vol4.3 Voi4.4 VqI4.5 (Limited Offer) AC Product Guide Spring '89 Public Domain Software: .00 each for subscribers (yes, even the new ones!)
.00 each for non subscribers (three disk minimum on all foreign orders) 1 Please circle your Public Domain Software choices below: [ Amazing on Disk: asi .Sources Listings V3.8S V3.9 A#3. , .Source & Listings V4.5 & V4.6 A#2. . .Source & Listings VA4 Ln.NOCKuLation Disk: IN#?
..Virus protection Amicus: Al A2 A3 A4 A5 A6 A7 AS A3 AlQ Al 1 A12 A13 A14 Al5 A16 A17 Ata AlS Frctl Fish: FF1 FF2 A20 FF3 A21 FF4 A22 FF5 A23 FF6 A24 FF7 A25 FFS A25 FF9 FF 10 FFU FF12 FF13 FF14 FF15 FF16 FF 17 FF18 FF19 rF20 FF21 FF22 FF23 FF24 FF25 FF26 FF27 FF2S FF29 FFX) FF31 FF32 FF33 FF34 FF35 FF36 FF37 FF3S FF39 FF40 FF41 FF42 F=4S FF44 FF4S FF45 FF47 FF48 FF49 FF50 FFSt FF52 FF53 FF54 FF55 FF56 FFNA FF53 FF59 FF60 FF61 FF62 FF63 FFS4 FF55 FF66 FF67 Free FF69 FF7Q FF7I FF72 FF73 FF74 FF75 FF76 FF77 FF73 FF79 ffna FF81 FF32 FF83 FF84 FFB5 FFS6 FFB7 FFHA FF89 FF90 FF91 FF92 FF93 FF94
FF55 FF56 FF97 FF93 FF99 FF100 FFI01 FF102 FF103 FFI04 FF105 FF105 FF107 FF108 FF1CS FF1I0 FF1J1 FF 112 FF1T3 FF114 FF115 FF116 FFU 7 FF118 FF 119 FF120 FF12!
FF122 FF123 FF124 FF12S FF126 FF127 FF12S FF129 FF130 FF13I FF13 2 Fft33 FF134 FF13S FF13S FFI37 FF133 FF139 FF140 FF141 FF142 FF143 FF144 FF145 FF146 FF 147 FF148 FF149 FF150 FF151 FF 152 FF153 FF154 FF155 FF156 FF157 FFI56 FF15S FF160 FF16T FF162 FF163 FF154 FF?65 FFT66 FF167 FF163 FF163 FF170 FFI71 FF172 FF173 FF174 FF175 FF170 FF177 FF178 FF 179 FflBO FFI81 FF1B2 FF1B3 FF1B4 FF135 FF1S6 FF187 Ffi&a FF169 FflSO FF191 FF 192 FF1S3 Fft94 FP195 FF195 FF197 FF 158 FFI99 FF200 FF201 FF202 FF203 FF204 FF205 FF20G FF207 FF208 FF209 FF210 (NA Denotes disks removed from the collection) Please
complete this form and mail with check or money order to: PDS Disks: Total: PiM Publications, Inc,
P. O. Box 869 Fall River, MA 02722-0869 Subscribe and More!
Amazing is now available by Visa and MasterCard dial 1 800 345 3360 or use the form below.
Subscribe TODAY and save over 49% on Amazing Computing!
R' Please use this order form when subscribing to Amazing Computing™, ordering Back Issues, or ordering Amiga™ Public Domain Software Name_ Street_ City_ St. .Zip_ ‘Charge my ? Visa ? MC #_ Signature_ _ Expiration Date_ . All Charges are subject to a .00 minimum.
PROPER ADDRESS REQUIRED in crder to expedrte and guaranlee your order, all large Pubic Domain Software orders, as well as mosl Bach issue orders, are shipped by United Parcel Service UPS requires that all packages be addressed to a street address for correct delivery.
Subscription: $_ Please circle the appropriate item: New Subscription Renewai Please start my subscription to Amazing Computing™ with the next available issue or renew my current subscription. I have enclosed .00 for 12 issues in the U.S. (.00 Canada and Mexico, .00 foreign surface). All funds must be in U.S. Currency on a U.S. Sank Back Issues: .00 each US, .00 each Canada and Mexico, .00 each Foreign Surface.
Please circle your Back Issue choices below: V0I1.1 VCI1.2 Vo) 1.3 Vd1.4 Von.5 Volt .5 VoM.7 Volt.S Vol1.9 VoJ2S VoK.4 VcJ2.5 Vol2.6 Vol2.7 Vol2.8 Vot2.9 Vd2.10 Vol2.11 Vol3.2 Vol3.3 Vol3.4 VdI3.5 VCI3.5 Vol3.7 Voi3.S Voi3.9 V0I3.10 VoM.1 Vo!4,2 VoW.3 Vol4.4 Vol4.5 (Limited Offer) AC Product Guide Spring '69 Public Domain Software: .00 each for subscribers (yes, even the new ones!)
.00 each for non subscribers (three disk minimum on ail foreign orders) Vol2.1 VOI2.12 Vo0.11 V0I2.2 VO0.1 VOI3.12 Back Issues: $_ Please circle your Public Domain Software choices below: Amazing 011 Disk: A*:. . .Source & Ustrigs V3.S& V3.9 A#2. . .Source A Lutings V4.4 A#3.
. .Source & Listings V4.5 i V4.6 InNOCKuLUlon Disk: in#i ...Virus protection Amicus: Al A2 A3 A4 AS At A7 A6 A3 Aio All A12 A13 A14 Ai5 A1S A17 A18 A19 A3) A21 A22 A23 A24 A25 A26 Fred Fish: Ffi FF2 FF3 FF4 FF5 FF6 FF7 FF8 FF9 FF10 FFU FF12 FFI3 FF 14 FF15 FF16 FF17 ffib FF19 FF20 FF21 FF22 FF23 F=24 FF25 FF26 FF27 FF2S FF29 FF30 FF31 FF32 FF33 FF34 FF35 FF36 FF37 FF33 FF39 FF*0 FF41 FF42 FF43 FF44 FF45 FF46 FF47 FF40 FF43 FF50 FF51 FF52 FF53 FF54 FF55 FF56 FFNA FF53 FF59 FF60 FF61 FF62 FF63 FF£4 FF65 FF56 FF57 FF63 FF69 FF7D FF71 FF72 FF73 FF74 FF75 FF76 FF77 FF76 FF79 FFNA Fffil FFS2 FF63
FF84 FF85 FF& FF37 FFNA FF09 FF90 FF9I FF92 FF93 FF94 FFS5 FF96 FF97 FF93 FF99 FF100 FFJ01 FFI 02 FF 103 FF104 FF 105 FFI 06 FF107 FF109 FF109 FFI10 FF111 FF112 Ffi S3 FF114 FF 115 FF116 FF117 FF110 FF119 FF123 FF121 FFI22 FF 123 FF124 FF125 FF‘26 FFJ27 FF128 FF129 FF130 FF131 Ffi 32 FF133 FF134 FF135 FF136 FF137 Ffi 38 FFI39 Ffi 40 FF141 FFI 42 FF143 FFI44 FF145 FF145 FF 147 FFI 48 FF149 FF150 FflSl FFI 52 FFJ53 FF154 FF155 FF155 FF1S7 FFJS8 FF153 FF150 FF161 Frt62 FF163 FF164 FF165 FF16S FF167 FF16S FFI 69 FF170 FF171 FFI 72 FF173 FF174 FFI 75 FF176 FFI77 FFI73 FFI 79 FF180 FF181 FF 182
FF1S3 FF1E4 FF1B5 FFI 66 FF1B7 Ffi 63 FF189 FFI90 FF19I FF192 FF193 FF134 FF1S5 FF196 FF197 FF1SS Ffi 99 FF200 FF201 FF202 FF203 FF204 FF205 FF2Q6 FF207 FF203 FF203 FF210 (NA Denotes disks removed from the collection) PDS Disks: $_ Total: Please complete this form and mail with check or money order to: PiM Publications, Inc.
P. O. Box 869 Fall River, MA 02722-0869 Amaze Me r i Please use
this order form when subscribing to Amazing Computing™,
ordering Back Issues, or ordering Amiga™ Public Domain
Software PROPER ADDRESS REQUIRED. In crder to expedite and
guarantee your order, alilarge Public Domain Software orders,
as well as most Back issue orders, are shipped by United
Parcel Sorvice. UPS requires that all packages be addressed to
a street address tor correct delivery.
Charge my Qvisa QMC Signature_ Name_ Street_ City_ Zip_ Please circle the appropriate item: New Subscription Please start my subscription to Amazing Computing™ with the next available issue or renew my current subscription. I have enclosed .00 for 12 issues in the U.S. (.00 Canada and Mexico, .00 foreign surface), All funds must be in U.S. Currency on a U.S. Bank Back Issues: .00 each US, .00 each Canada and Mexico, .00 each Foreign Surface.
Vol1.1 von.2 Vol1.3 Vol1.4 VoH.5 V0H.6 Voi1.7 V0H.8 Voh.9 Vol2.1 Vol2.2 Vo12.3 V0I2.4 Vo12.5 Vol2.6 Vol2.7 VOI2.8 Vol2.9 Vol2.1G Vol2-11 Vol2.12 Vol3.1 Vol3.2 Vo!3.3 Vol3.4 Vol3.5 Vol3.6 Vol3.7 Vol3.8 Vol3.9 VOI3.10 Vol3.11 VoI3.12 Vol4.1 V014.2 Vol4.3 Vol4.4 VOI4.5 (Limited Offer) AC Product Guide Spring '89 Public Domain Software: .00 each for subscribers (yes, even the new ones!)
.00 each for non subscribers (three disk minimum on all foreign orders) Please circle your Public Domain Software choices beiow: St. Expiration Date_ _AI1 Charges are subject to a S20.00 minimum Subscription: Renewal Back Issues: $_ Amazing On Disk: A# t.. .Source & Listings V3 V3.9 A#3.. .Source & Listings V4.5 & V4.6 Amicus: At A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 A15 A17 A1B A19 A20 A21 A22 A23 A24 A25 A26 Fred Fish; Fft FF2 FF3 FF4 FF5 FF6 FF7 FFS FF9 FftO FF11 FF12 FF13 FF14 FF15 FF16 FF17 FF18 FF19 FF20 FF21 FF22 FF23 FF24 FF25 FF2S FF27 FF28 FF29 FF30 FF31 FF32 FF33 FF34
FF35 FF36 FF37 FF38 FF39 FF40 FF41 FF42 FF43 FF44 FF45 FF46 FF47 FF48 Ffi9 FF5C FF51 FF52 FF53 FFS4 FF55 FF56 FFNA FF58 FF59 FF60 FF6t FF62 FF63 FF64 FF65 FF66 FF67 FF68 FF69 FF70 FF71 FF72 FF73 FF74 FF75 FF76 FF77 FF78 FF79 FFNA FF81 FF82 FF63 FF84 FF85 FF86 FF87 FFNA FF89 FFSQ FF91 FF92 FF93 FF94 FF95 FF96 FF97 FF98 FF99 FF100 FF101 FF102 FF103 FF104 FF105 FF106 FF107 FF108 FF109 FF110 FF111 FF112 FF113 FF114 FF115 FF116 FF117 FF118 FF119 FF120 FF121 FF122 FF123 FF124 FF125 FF126 FF127 FF128 FF129 FF130 FF131 Fft 32 FF133 FF134 FF135 FF136 FF137 FF133 FF139 FF140 FF141 FF142 FF143 FF144
FF145 FFU8 FF147 FF148 Fft49 FF150 FF151 FF152 FF153 FF154 FF155 FF1S6 FF157 Fft 53 FF159 FF160 Fft 61 FF162 FF163 FF164 FF165 FF166 FF167 FF158 FF169 FF170 FF171 FF172 FF173 Fft 74 FF175 Fft76 FF177 Fft 78 FF179 FF180 FF181 FF182 FF183 FF184 FF1B5 FF186 Fft 87 FF188 FF189 FF190 FF191 FF192 Fft 93 FF194 Fft 95 FF196 FF197 FF1S8 FF199 FF200 FF201 FF202 FF2C3 FF204 FF205 FF206 FF207 FF2C8 FF2C9 FF210 (NA Denotes disks removed from the collection) Atf2.. .Source & Listings V4.4 InNOCKuiation Disk: !N#t... Virus protection PDS Disks: $ Please complete this form and mail with check or money order
to: PiM Publications, Inc.
P. O. Box 869 Fall River, MA 02722-0869 Total: $ 1-800-345-3360
3. Simply the Best.
The all new Digi-View Gold is the best video digitizer for the Amiga. Period. Nothing else even comes close. Why?
The secret is that Digi-View Gold captures 2.1 million colors in memory, giving you an incredible 100,000 apparent colors on screen simultaneously.
And it’s easy to use. Just focus your video camera on any object or picture, and in seconds Digi-View Gold turns it into Amiga graphics that glow with vibrant color and clarity. Whether you are creating graphics for desktop publishing, presentations, video, or just for fun, Digi-View Gold gives you dazzling images with amazing simplicity.
Digi-View Gold is designed specifically for the Amiga 500 and 2000, and plugs directly into the parallel port.
Digi-View Gold’s powerful image capture and manipulation software (version 3.0) now has complete control ot color and sharpness, full overscan, extra halfbrite, and a special line art mode for desktop publishing.
Only Digi-View Gold:
• Can digitize in all Amiga resolution modes from 320x200 up to
768x480 (full hi-res overscan)
• Uses 2 to 4096 colors (including extra halfbrite)
• Uses exclusive Enhanced HAM for super fine detail
• Is 100% IFF compatible and works with any graphics software
• Can digitize 21 bits per pixel (2.1 million colors) for the
highest quality images possible
• Has advanced dithering routines that give an apparent 100,000
colors on screen simultaneously
• Has powerful Image processing controls for complete IFF picture
manipulation If you want the highest quality graphics for your
Amiga, as easy as 1, 2, 3; then you need the new version of the
best selling video digitizer of all time: Digi-View Gold.
NsWIek Only 9.95 Digi-View Gold is available now at your local Amiga dealer.
Or call 1-800-843-8934 INCORPORATED ¦Requires standard gender changer for use wilh Amiga 1000 Video camera required: not included. NewTek sells a video camera, copy stand, and the Digi-Droid automated (liter wheel lor Digi-View Gold It your local retailer doesn’t carry these products, call us at 913-354-1146.
Digi-View Gold is a trademark ot NewTek. Inc Amiga is a trademark ot Commodore*Amiga, Inc. Be seeing you!!
1 Z-(4.5ff,%.5f) C-(t.5f,%.5f) to (%,5f,%,5f) , cx, cy, xmin,ymin, xmax, ymax); SetWindowTitles (pcur_wlr.d, window title!, -ID; ) else if (mand_flaa =¦» JULIA_SET) ( sprintf(window_titlel, 2
* C=(%.5f,%.5f) Z=l%.5f,%.5f) to {%. 5f, %.5f) , cx, cy,
xmin,ymin, xmax, ymax); SetWindowTitles(pcur_wind,
vindcv_titlel, -ID; nx_min =0; nx_max = (unsigned short)

Click image to download PDF

Merci pour votre aide à l'agrandissement d'Amigaland.com !


Thanks for you help to extend Amigaland.com !
frdanlenfideelhuitjanoplptroruessvtr

Connexion

Pub+

52.6% 
11.7% 
4.2% 
3.4% 
3% 
2.2% 
2.1% 
1.7% 
1.1% 
0.9% 

Today: 5
Yesterday: 75
This Week: 449
Last Week: 602
This Month: 2226
Last Month: 2920
Total: 71836

Information cookies

Cookies are short reports that are sent and stored on the hard drive of the user's computer through your browser when it connects to a web. Cookies can be used to collect and store user data while connected to provide you the requested services and sometimes tend not to keep. Cookies can be themselves or others.

There are several types of cookies:

  • Technical cookies that facilitate user navigation and use of the various options or services offered by the web as identify the session, allow access to certain areas, facilitate orders, purchases, filling out forms, registration, security, facilitating functionalities (videos, social networks, etc..).
  • Customization cookies that allow users to access services according to their preferences (language, browser, configuration, etc..).
  • Analytical cookies which allow anonymous analysis of the behavior of web users and allow to measure user activity and develop navigation profiles in order to improve the websites.

So when you access our website, in compliance with Article 22 of Law 34/2002 of the Information Society Services, in the analytical cookies treatment, we have requested your consent to their use. All of this is to improve our services. We use Google Analytics to collect anonymous statistical information such as the number of visitors to our site. Cookies added by Google Analytics are governed by the privacy policies of Google Analytics. If you want you can disable cookies from Google Analytics.

However, please note that you can enable or disable cookies by following the instructions of your browser.

Visitors

Visite depuis
03-10-2004
Visite depuis
23-02-2014