A new way to do graphics on the Apple. (two graphics boards) (evaluation) Steve Arrants.
When it was first introduced, the Apple was perhaps the most revolutionary machine of its kind. Though it offered a tiny amount of RAM, no disk-drives, and only a fair Basic, hobbyists and hackers fell in love with it. Well, times have changed. The Apple is now just one product among many. Although the folks in Cupertino have continued to improve the product, graphics and sound are still limited on the Apple.
Go to your favorite arcade. Play Zaxxon or Robotron. Spectacular graphics, right? Life-like sounds? Until now, those effects were only palely imitated on the Apple. Exciting graphics and sound on the Apple were usually achieved at the expense of large chunks of memory.
The Texas Instruments 99/4A, Atari 400 and 800, and even the Commodore 64 and Vic-20 all boast graphics and sound capabilities that make Apple aficionados green with envy. By adding special chips that can produce these effects, manufacturers can not only offer a good computer, but an excellent game machine.
For reasons of its own, Apple has not included these special chips in the IIe. Perhaps they are trying to change the image of the Apple to one of a business machine rather than a game unit. It is interesting to note that the Lisa, built as the quintessential business machines, offers superb graphics capabilities. LisaDraw makes graphics so easy, so foolproof, that I wish those capabilities could have been transferred over to the IIe.
Why has Apple ignored innovations in graphics and sound? Why does creating hi-res graphics on the Apple take more time and thought than writing a master's thesis? And why doesn't Apple offer sprite graphics, which other manufacturers offer as a sine qua non? If we look at the history of Apples, it is easy to see that Apple does not try to cover all the possible applications of its machines. Apple Computer does an excellent job in covering and supporting business applications, business graphics, and data management. Peripheral manufacturers support the other side--the frills in which a business buyer is not interested. It is the same with sprite graphics and great sound. Peripheral manufacturers see a need and fill it.
Sprite graphics hardware is not too difficult to produce. Neither is the hardware for creating life like sounds. Having both of them running in conjunctions with Apple-graphics, however, is not as easy as it may sound. The same with software. Sprite software is simple to write. But writing the software that allows all of this to go on simultaneously is very difficult. In effect, it calls for the writing of a new language.
Two manufacturers have just released boards for the Apple which make sprite generation possible. Both Synetic Systems Inc. and Third Millenium Engineering Corporation have done the almost impossible. With their new peripheral boards music, speech, sprite graphics, and more are available for your Apple.
They have not only changed the Apple but transformed it. Both products are based on the same principle. The 6502 is fine for what it does, but when generating sound or graphics, it is agonizingly slow. The microprocessor dedicates all of its time and energy to the task of creating, moving, and changing graphics and sound. Therefore, program execution is slow, especially when the microprocessor must perform other tasks.
Instead of doing tricks with memory or language, a new graphics and sound processor takes over these jobs from the 6502 chip, freeing it for other work. But before we take a look at these new peripheral boards, let's take a look at Apple vs. sprite graphics. The limits Of Apple Graphics
If you have ever done any graphics applications with the Apple, you have probably been bothered by color-clashing. Whenever bits are in horizontally adjacent positions, clashing occurs if one bit is on and the other is off. When an object moves across the screen, it causes this clash and erases background it passes over.
This doesn't cause any problems when one or two objects move across a black background. When ten objects fly across an orange background, however, you begin to see how mediocre Apple graphics really are.
As an analogy, think of an animated cartoon. Characters move across the screen, passing freely in front of and behind one another. They can walk into the background or foreground with ease. This is because these images are multi-plane--the entire image is composed of many parts, and each part does not have to be redrawn with each move.
Because Apple graphics are done on a single plane, they are much more difficult to work with. You could always XDRAW or "mask" certain areas of the screen, but both of these methods are difficult, time consuming, and basically unsatisfactory solution. Each object must be erased and redrawn with each move. Beyond The Limits With Sprites
Sprite graphics offer greater speed--comprable to assembly language graphics--and are easier to create. There is no XDRAWing, no masking or bit-shifting. Both SuperSprite and the Arcade Board offer 16 colors, which can be overlaid to produce different hues. With 35 graphic planes, almost any effect you can think of can be drawn.
But that is not all--Apple graphics are also available at any time.
Think of the possibilities of using 35 graphics planes at once! Instead of redrawing an entire screen, you need only move an object in one graphic plane. For example, if you have a scene of a car driving across a desert, you can animate both the graphic plane on which the car is drawn and that of the background. They are the only planes that you need to bother with. In contrast, because Apple graphics are done on a single plane, the entire scene must be redrawn.
These impressive effects are achieved, using Applesoft Basic and an appended language which uses the ampersand hook to call the sprite graphics functions into use. Since this language is just an extension, it is totally compatible with Applesoft. No other language can make that claim--not Logo, not GraForth, not Pilot.
The potential of these new boards and their languages is exciting. Think how many times you have wanted to write your own commercial quality game but couldn't because learning machine language or GraForth seemd to difficult. With these new products, sprite graphics programming is almost as easy as using regular Apple graphics. SuperSprite
SuperSprite consists of the Texas Instrument TMS 9918A video display processor, the General Instruments AY3-8912PSG sound generator, 16K of RAM for video use, and the Echo II Speech Syntheizer. Included in the package is the Star Sprite software, Echo II Speech software, a speaker, cables, and documentation.
Installation is involved. The board must be placed in slot 7 to pick up the video trace signal. Four jack inputs on the card must be connected. One goes to a monitor, which allows normal video when the SuperSprite board is not in use. Another connection goes between the card and the video outuput on the Apple. A third connection is between the card and the monitor used for sprite and Apple video, and fourth input/output connects the SuperSprite board to an auxiliary amplifier, such as a stereo system.
There are three different software packages for the SuperSprite board. Star Sprite I from Avant-Garde is a beginner's package. Star Sprite II and III are more advanced versions, offering more utilities and more machine language programming information. All disks are unprotected, listable, and copyable, allowing you to make backups and customize programs for your own use. Since the software is useless without SuperSprite, this is understandable.
The software consists of the Ampersprite language, a program to help with the installation and set-up, three short games, and a tutorial. Also included are programs for sprite creation, sprite painting, scene creation, realistic sound generation, and text labeling. Little previous programming experience is required. Simly read the instructions, and you will be creating path and direction tables, mazes, animation sequences, and your own games in no time. If you can program in Applesoft, you can program with Ampersprite.
If you purchase SuperSprite with the Echo II Speech Synthesizer option, you can include human speech in your programs. The Echo II software lets you create spoken words from leters typed in or by phonemes, the smallest distinguishable sound units of a language. The word Speech, for example, is composed of six letters but only four phonemes. Using phonemes allows greater control over the speech, making it sound more natural. Also included is Echo Words, a dictionary of 719 words and phrases in a female voice.
The Echo Speech Synthesizer can be used with sprite graphics and within regular Applesoft programs. Arcade Board
The Arcade Board uses the same Video Display Processor as SuperSprite. The chip used for sound generation is the General Instruments AY-3-8910, a cousin to that found in the SuperSprite. The package includes software and documentation. No provision for speech synthesis is present, and cables are not provided. The Arcade Board installs in any available slot, although 4 or 7 is recommended. Slot 4 must be used to run any of the demo programs.
Insert one cable from the board into your monitor or television. A wire from the board plugs into the Apple Video Out. This feeds the normal Apple video signal to the Arcade Board for softswitching between Apple video and Arcade Board video. The final connection is between the board and an external speaker (not provided).
Software consists of tne Ampercade language extension to Applesoft and demo programs. Its use is similar to the Star Sprite extension of SuperSprite. The photocopied documentation won't win any literary awards, but it does give an adequate explanation of commands. Included in the documentation package are reference manuals on the VDP and PSG chips.
They are nice to have, but I wonder how many users will understand them. How They Work
Both boards remove from the Apple 6502 all the labor involved in creating graphics and sound. Since the chips on the boards are dedicated to performing only these tasks, they do a much better--and quicker--job. For example, to move a 40-pixel wide character, the Apple 6502 must draw the character, erase it, and redraw it in a new location. To do this involves literally thousands of machine instructions. basic is too slow, and assembly language is too complex for many users. With the SuperSprite or Arcade Board, the same operation can be done with about ten machine instructions. Even slow Basic can handle this.
The same is true for sound generation. To make a sound on the Apple, you toggle a port to move the speaker cone in and out. The frequency and tone are determined by the rate of toggling. If you wish to have a continuous tone, the 6502 must continually toggle the speaker port. While it is doing this, it can't do anything else. That is why Apple games usually have good graphics with only few sound effects.
You can have animation or you can have sound effects. You just can't have them at the same time. With these boards, the 6502 tells them to create the desired sound until told to stop. The 6502, therefore, is free to direct other things, such as animation. Thus, the combination of the VDP chip and the PSG chip take care of most of the "leg-work" involved in creating graphics and sound.
The commands used with both boards are quite simple to use in a normal Basic program. Use regular Applesoft Basic graphics command for Apple graphics. To use sprites and sound effects, you must use the special language extensions.
All must begin with the an ampersand (&). For example, the line. 10 & RX 15, 6 in Star Sprite will change the text color to 15 (white) and the background to 6 (red). The lines 10 & SOFF 20 & TNA, 256, 15 initialize the sound chip and then generate a tone in channel A with a pitch value of 256 and a volume of 15 with Ampercade.
To do these operations with an unextended Applesoft would involve many more lines of programming. In the first example, you would have to write a character generation program in high-resolution graphics, which would involve a shape table. In the second example, you would do a series of POKEs and value statements. With SuperSprite and Arcade Board, effects such as these are easy.
All other commands are just as easy. The creation of sprites is more difficult, involving pattern tables, path tables, and animation editors. Doing that is almost as easy--and as difficult--as using a commercial Apple graphics package. You can't enter a few commands and expect marvelous shapes and sounds to pop out of an Apple. Using these new boards involves learning a new type of graphics. Summary
As the pictures show, sprite graphics add a totally new dimension to Apple graphics. I showed off SuperSprite at a few user's group meetings. People couldn't believe that I had the monitor connected to an Apple. When the people at Synetix came to our offices to show us SuperSprite. I couldn't believe it either. But I have used both boards and become a believer. The Apple now has the same graphics and sound capabilities found in the Commodore 64 and Atari in addition to Applesoft and the other unique Apple features.
The programming possibilities are exciting. Challenging games and innovative programs are now within the grasp of any Apple owner. A vast knowledge of assembly language is not needed; the programming can be done from Applesoft with the sprite language extensions.
Will this be the next step of Apples? Will software be written to use these boards? These are interesting and important questions. There is no doubt that both boards work and that they can enhance the Apple. Unless software authors write programs that use them, however, both may go the peripheral graveyard. Without software, they make great paper-weights.
Which of the two is the best? The SuperSprite package offers the Echo Speech Synthesizer and better software. The Star Sprite software is designed for a range of users, from beginners to professional programmers. The documentation is excellent and not confusing, even when explaining complex ideas and applications.
The Arcade Board package has fewer frills but is far less expensive. Bear in mind, too, that we had an early version with preliminary documentation and software. The Arcade Board does what it promises but, at the moment. It think SuperSprite delivers more.
Software is generally incompatible between the two products. A program written for the SuperSprite may not run on the Arcade Board and vice versa.
Products: Synetics SuperSprite (computer apparatus)
Third Millenium Engineering Arcade Board (computer apparatus)