| ROVAC ZMAGAZINE | | Issue #152 | | April 11, 1989 | |Copyright 1989, RII| |This week in ZMagazine| Editor's Monitor Harold Brewer World of Atari Update Diamond OS Super Cartridge Joe Lovett Computer Software Services Bob Puff Machine Language Strings Dennis Pitman Z*Net Newswire 8-bit Edition Harold Brewer |EDITOR'S MONITOR| |by Harold Brewer| April seems to be the start of the computer show season. This month, ZMagazine associate John Nagy will be covering both Comdex (happening now) and World of Atari. After reading the CSS press release (found in this issue of ZMagazine) I have to say that the word -excited- almost covered my reaction. Please give it a look-see and perhaps post your feelings. Have fun with your 8-bit Atari--I know I certainly do! |WORLD OF ATARI UPDATE| Reprinted from ST-ZMagazine #15 |-Press Release-| April 22, 1989 at 7:30 p.m. at the Disneyland Hotel in Anaheim California, ST-WORLD/World Of Atari Show in association with Keyboard Magazine, STart Magazine, and KWAI America present: -Beyond The Threshold-, a musical tour of today's new technology, hosted by Mike Pender of the Moody Blues with special guest Mic Fleetwood of Fleetwood Mac. Starring Jake Flader from the fusion group MAZE, James Lee Stanely with a section from his highly acclaimed new album -Simpatico-, John Black formerly of the GAP Band, Marc Ritler and Greg Welchel from the Pointer Sisters Band, Chris Many and Gregg Levin will do a song from their new album -Too Close To The Sun-. Additional groups will be named later. Additional concert highlights include a special demo of the Atari/HOTZ MIDI keyboard by Mic Fleetwood and Jimmy Hotz. A rare classical piece will be performed by Joseph Zawinul from the group Weather Report. The concert will take place in a 16,000 square foot hall with a capacity of 1000 seats. Admission price is $5.00, some free tickets will be made available thru some of the paid exhibitors. |SHOW UPDATE| Here is a weekly update to the Anaheim WOA Show. The following developers will be showing NEW products at this show. Atari, along with the Comdex products will be on hand with other Atari related products such as the PS-3000, the monitor with disk drive attached on sale for $349.00. The New JVC made SC1224 will also be on sale for $299.00. Seymor/Radix will be showing the DVT-VCR Hard Drive backup system. This product will plug in directly to the ST cartridge port and supply RCA jack output for direct connect to your VCR. Storage of up to 360Meg on any store bought VCR tape. Transfer rates are well over 8Meg per minute. Artison Software will be showing Graph Maker. Michtron will be demoing Fleet Street Publisher which is exclusively compatible with drivers from Imagen. Fleet Street is the only DTP package that works. Technovision will be showing -DaVinci- a new graphics editor. Gribnif with NeoDesk 2.3 and updating at the show. Stay tuned for more details. This is just a rumor. Bill Skurski Enterprises on hand with Video ST Tutor and selling -Beginners Guide To The ST-. Moniterm with their new controller board that will be compatible with old and new version of TOS for the new 19 inch monitor output. Robust Software will be showing Edit-ST. This is a full gem based text editor with programmable keys, full mouse configuration, ability to transpose to all languages like C, Pascal, fortran and more. Price is set at $59.95 Gadgets By Small debuting Spectre GCR. Avante Gard debuting PC-Ditto II. Magnetic Images showing -Gold Of The Realm- Reeve Software showing ST Jr in cartridge with applications software. Stay tuned to ST*ZMAG next week for a full listing of all developers and vendors. |DIAMOND OS SUPER CARTRIDGE| |by Joe Lovett| Miami Valley Atari Computer Enthusiasts The DIAMOND OS Super Cartridge is a new cartridge based GOS (Graphic Operating System) for the ATARI 8-bit computers. It provides a GOS similar to what you get with the ATARI ST. This OS allows you to manipulate files and disks using a mouse pointer. Before I go on, I should explain what a Graphic Operating System is. If you have seen an ATARI ST, AMIGA or MAC, you have seen a screen with a line of words at the top such as desk, file, disk, etc. On the rest of the screen are a variety of objects ranging from graphics of disk drives to a trash can. You have also probably seen someone moving a device known as a mouse (why, I don't know) around on a table with the effect of moving a small arrow on the screen. The line of words at the top of the screen is the menu bar for drop down menus, the objects on the screen are icons, and the little arrow is known as the mouse pointer. By moving the mouse pointer to icons and/or the menu bar and menus, one can obtain a disk directory and manipulate files just as one can from any DOS. The only difference is, it's easier. No more typing in file names, or trying to remember file name spellings. Diamond is set up to work with DOS XE or DOS 2.x, but it may be re-configured to work with most any DOS. In addition, it allows the use of a wide variety of input devices (keyboard, joystick, ST mouse, Koala pad, etc.). However, I have found that the ST mouse works best. My Diamond cartridge came two days after I had gotten my SpartaDOS X cartridge and I started out by trying to use them together. Unfortunately, it took me a whole day to get this to work. The Diamond manual failed to inform the user that you must write a special CONFIG.SYS file. It also failed to note that the SDX cartridge must be called from the file DIAMOND.SDX. Once I figured this out, things became somewhat better. I moved the mouse pointer over the one disk drive and pushed the button twice (this is known as double clicking). In the center of the screen a window-shaped box (called a window, believe it or not) appeared and filled up with a disk directory. Around the perimeter of the window are small icons which allow you to scroll through the disk directory, increase or decrease the size of the window, close the window, or cause the window to use the full screen and thereby give a full directory including time and date stamps. By putting the pointer on the title at the top of the window and holding the button down I could -drag- the window to any place on the screen. By moving the pointer over a file name and holding down the button I could then manipulate that file in a variety of ways. I could drag it to a second window opened on another directory and copy it to that directory. Also, I could drag it to another disk drive icon and copy the file to that drive. In addition, I could drag the file to the trash can and file it in the circular file. This all brings a rather nice feature of Diamond: it supports many of the features of SpartaDOS X and DOS XE. These include Time/Date stamping and subdirectory support. By double clicking on a directory name in the files window I could get a listing of what is in that directory. Diamond also allows the user to create new subdirectories and to copy files to them. Diamond will also call the ICD disk formatter if you are using SpartaDOS X. By placing the pointer over a file and double clicking I should be able to load that file. Unfortunately, I have been having some trouble doing this as there seem to be some incompatabilities between SpartaDOS X and Diamond. I have been in contact with Alan Reeve, and he has just recently obtained a SpartaDOS X cartridge. He informed me that he will be looking into these problems and will get back to me shortly. I will pass along any new information on this as soon as I get it. By moving the pointer along the menu bar I could select the various functions by clicking on them. The first menu, titled -Desk- holds two items. The first, -Info-, will place a short message on the screen about what program you are using (in this case Diamond). The second, -Reboot-, will do just that, except with SpartaDOS X. It seems that Diamond just does not want to recognize the SpartaDOS X cartridge sometimes. You can have other choices under the Desk heading such as a calculator, and these may be available soon. These -Desk Accesories- as they are called are usually very short and are loaded when you start up Diamond. The next choice on the menu bar is -File-. The first option under this choice -Open- allows you to open a disk directory (also accomplished by double clicking on a drive icon). The second choice -Status- will let you rename a file and/or change whether it is protected or not. The next choice -Duplicate- permits you to duplicate a file. This choice is necessary if you wish to copy a file and have only one disk drive. The fourth option is -New Folder-. This option allows the creation of a new folder or subdirectory. Finally, the last option -Close- allows a directory window to be closed. Below the -Close- option is a sixth choice printed below a line. This choice, -Quit- lets you quit to BASIC. You can then return to Diamond from BASIC by typing DOS. The third heading in the Menu Bar is -Disk-. The choices under this heading are -Format- and -Copy-. The -Format- option is self-explanatory, and it will call the ICD disk formatter from SpartaDOS X. The -Copy- choice will copy an single density disk. Not a very useful choice since most people are using either dual or double density. Finally, the last heading is Options. The options under this heading allow you to change how directories are displayed, whether or not Diamond gives you a warning before you perform some operations, and permits you to install more disk drives into the system. In addition, there is a -Save Desktop- choice which will allow you to save these configurations along with your placement of icons on the screen. The Diamond cartridge comes with a programmer's manual which can allow you to create applications which work with Diamond. Unfortunately, I can make neither heads nor tails of it. Reeve software is going to be coming out with several application programs that will make use of the Diamond environment. These include a paint program, a word processor, and a desk-top publisher, among others. One problem with Diamond has been support. I have had a lot of trouble getting in touch with and getting answers from Reeve Software. I originally got Diamond on the disk version, and then when the cartridge came out, the registered disk users were supposed to be sent upgrade information. I never was. I called Reeve Software, and tried to contact Alan Reeve on CompuServe. It took about 2 months of this to finally get the cartridge. Since then, I have been trying to get information about the problems I have been having with SpartaDOS X. It was not until recently, when I got in touch with Alan Reeve that I started to find out some things. In addition, it seems that Reeve Software has been having some trouble with keeping up with demand. This seems to be related to the supply of the cartridge cases which are made by ICD. As ICD also uses these cases for SpartaDOS X, which has been an extremely popular product, this shortage could last a while. For the most part, Diamond is a very useful piece of software. Unfortunately, it does seem to have some problems, most notably with SpartaDOS X. Occasionally, when doing some operations, Diamond will lock up and some functions will cease to operate properly. Because of this, for most DOS applications, I have found the SpartaDOS X menu function to be more useful. As soon as these bugs are ironed out, Diamond will be much more useful to me and other SpartaDOS X users. | Reeve Software | |20W150 Old Farm Lane | |Warrenville, IL 60555| | 312-393-2317 | |COMPUTER SOFTWARE SERVICES| |By Bob Puff| |New Products| > The Black Box < The Black Box is a device for your XL or 130XE computer that adds tremendous power to your 8-bit Atari. It has two buttons, two switches, and a set of dip switches visible from the outside. It plugs directly into the back of the 600XL, 800XL, and 130XE computers. There will be conversion kits made available for the 65XE and XE Game system units. The Black Box performs three main tasks: interface to a SASI/SCSI bus device (hard disks), Parallel printer port, and a RS232 port. A fourth option, available soon, will be a floppy disk port, especially useful to XF-551 owners. > The SASI/SCSI port provides the necessary signals for hooking up most common hard disks. You may partition your hard disk into as many drives as you wish; up to 9 can be accessed at a time. By pressing one of the buttons on the Black Box, you will enter the configuration menu, where you can re-assign drive numbers, etc. When you exit, you will be right back in the program you were running when the switch was pressed: the Black Box does not disturb anything! You may partition up to 48 megabytes per drive (for a total of 432 megs!), as the Black Box can handle 3 byte sector numbers (a special version of MYDOS will be provided that supports this feature). Imbedded drives (drives with built-in controllers) that use 512 byte sectors will present no problems. You can write-protect all hard disks with the flip of one of the switches on the Black Box! > The Parallel printer port will allow you to hook up any printer that uses the standard Centronics interface. As an option, you can use the computer's extra memory as a printer buffer, or order the Black Box with 64K of on-board RAM. You may assign printer number and line-feed options within the menu (for use with multiple printers). Another amazing feature of the Black Box is the built-in screen dump. By pressing a button (on the box), the contents of your screen will be dumped to your printer (you can define text or graphics modes with a switch)! > The RS-232 port supplies the full RS232 specification signals for connection to a modem or another machine (for null-modeming). The handler for the Black Box's modem port is built-in and takes up NO memory! The port handles rates up to TRUE 19.2K BAUD! > A future upgrade for the Black Box is a floppy disk interface board. This will allow the addition of up to four 5.25- or 3.5- mixtures of floppy drives to be used with the system. The drives will act like standard single/enhanced/double density disk drives, but up to 10 times faster! All drives will be Super Archiver compatible, and support up to 2 sides of 80 tracks. Along with this hardware upgrade will come software capable of reading, writing, and formatting disks in IBM's MS-DOS format and the Atari ST format, and allow you to transfer files between those disk formats and the Atari's format. (Please note this will NOT allow you to run IBM or ST programs on your 8-bit, but will allow you to use text files, created on one machine, on another.) The projected release date for the Black Box is the Summer of '89. The Floppy interface card will be available by the Fall of '89. The price of the Black Box will be $169.95 for the basic unit, and $199.95 with 64K of RAM (for the printer spooler). The price of the Floppy interface card has not yet been determined. > The Multiplexer < The Multiplexer system allows you to network up to 8 Atari 8-bits together with 1 -master- computer, allowing the -slave- computers to share common drives (hard disk or floppy), and a common printer. Into each slave computer goes a unit that plugs into the cartridge slot of your 8-bit computer (400/800, XL/XE). A single cable runs from the master unit to all slaves. All operation between the master and slave is done through this parallel bus, at blinding speeds. A special operating system gives each slave computer the ability to get data from the master, from a drive connected -local- to the slave, or from another slave. You can transfer programs between slaves without having to access a drive! > One example of how this is used is in a multi-user BBS. One such BBS will be available in the future, custom designed for the Multiplexer. But the software provided gives examples so you can write your own programs to utilize the Multiplexer to its fullest. > Other Future Products < Cartridge Port Extender: Relieve the frustration of the new stackable cartridges! Now you can put them where YOU want them. EPROM Programmer: Burn all 2732 thru 27512 PROMs/EPROMs VERY quickly! A 2732 can be burned, and verified twice in less than 12 seconds! Full read/program/verify functions, and full support of lower voltage PROMS. |MACHINE LANGUAGE STRINGS| >Programming for the 8-bit Atari< |by Dennis Pitman| Miami Valley Atari Computer Enthusiasts The most common way to use a machine language subroutine in a BASIC program is to convert the object code into decimal numbers, put the numbers into DATA statements, then READ the numbers and POKE them into memory. This technique has been used for a long time, in fact it is still being used today. However, if you'd like your programs to initialize faster, or if you're using up too much memory, there's a better technique you should consider: converting the machine language into strings. Using string assignment statements instead of DATA statements will not only save time required to POKE the numbers into memory, it consumes only about one-third as much RAM. There is, however, one main limitation of this technique: the machine language routine must be completely relocatable, which is not too hateful for short (under 256-byte) routines. The listing, after this article, is a clever utility program that converts a machine language subroutine into the fast-executing BASIC string statements and stores them on disk for later use. This program, -ML STRING CREATOR-, requires a mere 16K of RAM. |Execution From A String| The string technique works because, essentially, these statements are equivalent: 10 DATA 33,37,106,47,122,65 20 A$=-%j/zA- If the subroutine contains internal JMPs (Jump to New Location) or JSRs (Jump to New Location Saving Return Address), which aren't relocatable, you must use the conventional DATA statement technique. When the ML is relocatable, it is very possible to execute the subroutine directly from the string with this: 30 X-USR (ADR(A$) The ADR() function will let you find the beginning address of the string, and therefore for your subroutine. This assumes you have previously encoded the ML into the string variable A$ with ML STRING CREATOR. The string assignment statement is preferable when you're trying to squeeze a few more bytes into a limited memory. All ML bytes have a decimal value in the range of 0-255. Representing this in a decimal DATA statement requires as many as 3 bytes, plus a comma to separate the entries. In a string assignment, each ML byte is represented as a single character. There are a few other limitations, however. It is not possible to represent the decimal values 155 or 34 inside quotes in a string assignment. Value 155 represents a carriage return or EOL marker that cannot be embedded in the assignment statement, even as part of an escape sequence. Value 34 represents the double-quote character used as a delimiter in the assignment statement. |PUTTING IT TOGETHER| Keeping the limitations in mind, you can use ML STRING CREATOR to locate an ML subroutine somewhere in the memory, turn it into one or more string assignment statements, and LIST the statements to your disk. The responsibility is yours to initially load the ML into the memory. If you're using an assembler that lets you switch to BASIC without erasing the memory, you can assemble directly to memory and load ML STRING CREATOR to convert the object code into strings. This program begins by requesting the first and last memory addresses (in decimal) of your routine, name of the string variable to be created, and a line number for the first string assignment statement. A maximum of 80 bytes can be contained in a single statement string, and the maximum ML program length accommodated by the program is 256 bytes. The string variable name, however, is limited to seven characters, including the trailing $ symbol which must be present. The line number for the first string assignment statement must be greater than 190, and the subsequent lines are to be numbered in increments of ten. The ML STRING CREATOR is also self-modifying: the string assignment statements become a part of the program. However, the part of the program which is taking care of business protects itself from modification. This program may also be used repeatedly without being reloaded, but it will continue to grow in size. The self-modification feature is also used to produce a LIST statement in line 150. In the listing below it appears as a REM statement, but after the string assignment statements are created it will be modified. ML STRING CREATOR will prompt you for the filename of the disk file in which it will store the assignment statements. This filename and the first and last statement numbers of the created statements are concatenated with 150 LIST, in addition to the appropriate commas and double quotes, to form a genuine LIST statement. Before the program retires, it will indicate the memory locations at which a decimal value of either 155 or 34 was encountered. The program will substitute a value of zero in these cases. Now, if there happens to be more than ten occurrences of 34 or 155, the program will stop with an error message. The technique used to create the strings consists of printing string assignment statements on a previously cleared screen, just as you would do from the keyboard if you were typing in a BASIC program. After the last string assignment statement is placed on the screen, a CONT statement is written on the screen in immediate mode (that is, with no statement number). Another feature of the program is the automatic RETURN. The Atari has a switch which makes pressing the RETURN key optional. It is location 842, which usually contains a 12. POKE 842,13 switches to automatic RETURN. The processing takes place rapidly when the computer presses RETURN, so be prepared. The commands to be processed must be both correct and in the right place on the screen, and the cursor must be positioned on or above the first statement. In case an error is detected, a message will be written on the screen, but the Atari, using the automatic RETURN, will process the error message as a command and a syntax error will result. With a little imagination, you can modify this program to accept other forms of input of decimal or hexadecimal values to be converted to character strings, or to accept a ML object file from disk. If you are planning to adopt some of these techniques to your own programs, there are a few things to watch out for. First, when placing the cursor at the top of the screen prior to activating the automatic RETURN, be sure to allow sufficient room so the screen text produced by the STOP statement will not overwrite the statements which your program placed on the screen. Also be sure to turn off the automatic RETURN (POKE 842,12) when you're done. |ML STRING MAKER| 1 REM ML STRING MAKER 2 REM Writes string assignment statements from up to 256 memory locations and LISTs them on disk. 10 DIM NAME$(10),RTN(11),RTN1(11) 20 ? CHR$(125);-ENTER--:? -START ADDRESS-;:INPUT FBA:? - END ADDRESS-;:INPUT LBA 25 ? - STRING NAME-;:INPUT NAME$:? -FIRST STATEMENT NUMBER-;:INPUT FSN:SN=FSN-10:I=LEN(NAME$) 30 IF LBA255 OR I<2 OR I>7 OR NAME$(I,I)<>-$- OR FSN<191 THEN? CHR$(253):GOTO 20 35 ? CHR$(125):? :DISP=-79:FBA=FBA-80 40 SN=SN+10:FBA=FBA+80:DISP=DISP+80:GHIJKLMNO IF FBA>LBA THEN GOTO 85 45 RANGE=79:IF LBA-FBA<79 THEN RANGE=LBA-FBA 50 ? SN;- -;NAME$;-(-;DISP;-)=-;CHR$(34);:FOR I=FBA TO FBA+RANGE:J=PEEK(I) 60 IF J=155 THEN J=0:K=K+1:RTN(K)=I:IF K=11 THEN 190 65 IF J=34 THEN J=0:L=L+1:RTN1(L)=I:IF L=11 THEN 190 70 ? -(ESC)-;CHR$(J);:NEXT I:? CHR$(34) 75 GOTO 40 85 ? -CONT-:POSITION 0,0 90 POKE 842,13:STOP 100 POKE 842,12 110 ? CHR$(125);-ENTER--:? - FILE NAME-;:INPUT NAME$ 120 ? CHR$(125):? :? :? -150 LIST-;CHR$(34);-D:-;NAME$;CHR$(34);-,-;FSN;-,-;SN-10:? -CONT-:POSITION 0,0 130 POKE 842,13:STOP 140 POKE 842,12 145 ? CHR$(125);-LISTING -;NAME$ 150 REM LIST statement will be inserted here. 160 ? CHR$(125):IF K>0 THEN?-Zero substituted for 155 @-:FOR I=1 TO K:? - -;RTN(I);:NEXT I 170 IF L>0 THEN? :? -Zero substituted for 34 @-:FOR I=1 TO L:? --;RTN1(I);:NEXT I 180 END 190 ? CHR$(125):? -TOO MANY 155s AND/OR 34s-:END This program was written by Tom Sak and received from Compute. |Z*NET NEWSWIRE 8-BIT EDITION| |by Harold Brewer| While speaking with ICD's Howard about a problem concerning SpartaDOS's ability to deal with 21st century dates, he informed me of a fix in the restoration half of ICD's FlashBack! (hard drive and Multi I/O backup utility). Howard said that both halves of FlashBack! (backup and restoration) are currently at version 2.3. Owners of FlashBack! version 2.x can receive a free upgrade just by sending in their original FlashBack! disk along with return postage to ICD, or by calling ICD's BBS and leaving a pertinent message to the SysOp to arrange for a download of the upgrade. Owners of earlier versions (1.x) would have to comply with ICD's upgrade policy to recieve the current version of FlashBack! (send original disk and $10 to ICD). | ICD, Inc. | | 1220 Rock Street | |Rockford, IL 61101| |BBS: 815-968-2229| | Attn: Howard | -GEnie announces new prices effective May 1, 1989. -First, the prime-time rate for GEnie will be reduced from $35.00 per hour to $18.00 per hour for 300, 1200, and 2400 baud access speeds. -Non-prime pricing will be re-structured by access speed. * 300 baud will remain the same at $5.00 per hour. * 1200 baud will increase from $5.00 to $6.00 per hour. * 2400 baud will decrease from $12.50 to $10.00 per hour. -In addition, the CB Club Fees will change from $50.00 per month to $30.00 per month with a $3.00 per hour connect fee. The CB Club still only applies to U.S. users during non-prime hours. The 60 day waiting period for new GEnie subscribers has been eliminated. GEnie Rates Summary: Speed Prime-time Non-prime 300 baud $ 18.00/hr. $ 5.00/hr. 1200 baud $ 18.00/hr. $ 6.00/hr. 2400 baud $ 18.00/hr. $ 10.00/hr. CB Club* N/A $ 3.00/hr. * (any speed, plus FX surcharges, if any) * plus $30/month CB Club membership fee. -FX surcharges will remain the same for designated locations. Prime-time is 8AM to 6PM Mon-Fri local time. Non-Prime time is 6PM to 8AM Mon-Fri plus all-day on Saturdays, Sundays and designated holidays. -GEnie announces the following rates effective May 1,1989 for Canada GEnie users. GEnie Rates Summary (Amounts below are in Canadian Dollars) Speed Prime-time Non-prime 300 baud $ 30.00/hr. $ 7.00/hr. 1200 baud $ 30.00/hr. $ 9.00/hr. 2400 baud $ 35.00/hr. $ 15.00/hr. -The CB Club option is not available in Canada and therefore Canada users are not affected by the CB Club pricing change. -FX surcharges will remain the same for designated locations. Prime-time is 8AM to 6PM Mon-Fri local time. Non-Prime time is 6PM to 8AM Mon-Fri plus all-day on Saturdays, Sundays and designated holidays.- This information is courtesy of GEnie. | Rovac Industries, Incorporated | | P.O. Box 74, Middlesex, NJ 08846 | | (201) 968-8148 | |Copyright 1989 All Rights Reserved| CompuServe: 71777,2140 GEnie: ZMAGAZINE Source: BDG793 ZMagazine Headquarters BBSes: Centurian BBS--(314)621-5046 (618)451-0165 Chaos BBS--(517)371-1106 Shadow Haven--(916)962-2566 Stairway to Heaven--(216)784-0574 The Pub--(716)826-5733