Classic Computer Magazine Archive ST-Log ISSUE 35b / SEPTEMBER 1989 / PAGE 36

APPLICATION

MAGNIWRITER

Bruce D. Noonan, M.D.

NOTE: Due to the large size of this program, it is available only on this month's disk version or from the databases of the ST-LOG ST users' group on DELPHI.

Most of us take our vision for granted. Sure, some of us wear glasses or contacts, but most people can have vision corrected to 20/20. For 11.4 million visually impaired Americans, however, just getting around the house is a major chore fraught with many obstacles and possible dangers. These individuals are often unemployable because they are unable to drive or see well enough to board a bus. Surprisingly enough, many of these same individuals have turned to computing as a means to make a living—specifically, word processing.

Most large-print word processors require the use of an IBM PC with special hardware and software. Approximately $5,000 was required to obtain the setup. Magniwriter and the ST present a more economical alternative. With the addition of a modem, one could produce the text on the word processor and transmit it to its destination for printing over normal phone lines. Needless to say, for low-vision individuals this can be the answer to their employment difficulties.

For several years now, I have been working on ST Writer, Atari's own word processor, distributed free with computers back in 1985, prior to the arrival of 1st Word. Although ST Writer had lots of bugs, I liked it because it was nearly identical to Atariwriter for the 8-bit machines and I was already familiar with the formatting commands. After coaxing Atari to release the source code to me, I fixed the bugs and even made it into a GEM half-breed. Now called ST Writer Elite, it can either be used with or without the mouse and dropdown menus.

Since I am an ophthalmologist (eye surgeon), I toyed with the idea of creating a large-print word processor for the ST. I had written a program for the 8-bit machine called Magnifile Text-Reader, which read-in Atariwriter or any ASCII files and printed them in large yellow letters on a black background (high contrast). It had search routines, line isolation and two sizes of text (large and extra-large). Currently, that program is available both on CompuServe and GEnie.

I looked at ST Writer and thought, "Why can't I make those letters large?" I toyed around with the source code, and Magniwriter ST was the result. It has all the features of ST Writer except for GEM (I couldn't figure a way to make all the menus and dialog boxes, etc.,with large print). But I did add a few features, including a "Save ASCII" ability. Files thus saved are not saved in ST Writer format, contain no formatting or printing controls but are compatible with nearly all word processors. The only margin setting that can be used with these files is the right margin. This can vary from up to 160 clear up to 196, depending on whether you are using an 80-column printer driver or a 132-column printer driver.

You can create a printer driver by loading in CONFIG.TXT into Magniwriter, entering your control codes for your specific printer, save the file (not Save ASCII), exit the program by typing "Q" at the menu screen, then run CONFIG.TOS from the desktop. The program reads the CONFIG.TXT file and writes a file called XYZZX.DAT—the printer driver file. This file must be in the same directory as MGWRITER.PRG in order to be loaded with the program. If you already have a printer driver for ST Writer Elite, it will work for Magniwriter ST as well.

Magniwriter ST can run in all three resolutions but has the largest text in low resolution, ten lines and 20 columns. Medium resolution allows 40 columns and ten lines, and high allows 40 columns and 20 lines. In order to use all three resolutions, however, the program had to be geared to the resolution with the least number of columns available (low). A problem with low resolution is that all prompts and responses must total 19 characters or less, plus a carriage return. Thus, many abbreviations are used,as well as chopped-up phrases.

If you are already familiar with ST Writer, you will not have any trouble. If you are using folders, you may not be able to get a drive specifier, folder and filename on a single line If you must use folders, name them with a single letter and use fewer letters in filenames. Otherwise, save your file to the main directory and do your housekeeping from the GEM desktop.

For those interested in how the large letters were obtained, I used the 8 × 16 character set in the ST. For medium and low resolution, usually the 8 × 8 set is used. However, by designing a custom character set, you can use any of the three available or design one of your own. The third set, 6 × 6, is used for the icons on the desktop and by various dialog boxes in application programs.

Since the 8 × 16 set was already twice the normal height, all that was needed was to make each letter double-wide. Although the line-A variables allow access to the font variables, one is restricted from creating a character wider than eight bits (one byte) when using Bconout( ) to print to the screen. What I was able to do, however, was create two character sets, one with the left eight bits of the letter, and the second with the right eight bits of the letter. I then printed half from the first character set, switched to the second character set immediately and printed the other half of the character. The ST microprocessor is so fast, it appears that both halves of each letter are being printed as a single letter.

You may notice that the cursor is only one-half the width of the letters—it also is restricted to eight bits in width. Oh yes, before I forget, the characters are 20 pixels high, not 16. This allows four pixels of blank space between lines. Fortunately, the width restrictions on characters did not apply to their heights as well.

You may be thinking, "Can I print out text in large letters on my printer with Magniwriter?" The answer is "yes and no." It depends on the capability of your printer. My Star NB24–15 has the capability of printing quad-sized letters if I send it the command to do so. With Magniwriter, the proper codes for double-sized letters at the top of the file will be:

Control-O 27
Control-O 104
Control-O 1

Just remember that when characters are double-wide and double-high, you can get only one-fourth the usual amount of text on a page. You will need to readjust your top, bottom, left, right and page-length settings to one- half their usual parameters:

Control-B 6
Control-T 6
Control-L 5
Control-R 35
Control-Y 66

It is always a good idea to save your file frequently when editing. If you have a particular preference for margin and style settings in the format line at the top, you can set them the way you like, then save the file. Every time you want to use those settings, merely load in the saved file with the format line of your choice.

Since Atari still legally holds all rights to the source code, this program cannot be sold and is in the public domain. The source code remains the property of Atari Corp.,and therefore is not included on the disk. You will, however, find several other files. MAGNIMAN.TXT is the tutorial and manual for Magniwriter ST. QUIKREF.TXT is an abbreviated manual. In order to print these or to view them, you must first run Magniwriter ST, then use Load to load the file. Type "P" for Print, then decide if it is to be printed to the screen or to the printer when prompted. If you print to the spooler, formatted text and printer controls will be written to a disk file. Spooler files can be printed directly via the Print options from the desktop by simply clicking on the file.

MAGCODES.TXT is a file that shows which keys produce ASCII characters greater than 127 using the Alternate-X toggle. Some foreign vowels and characters can be produced using the Control-Clr-Home "deadkey" toggle. With this, you can produce an "umlaut o," for example, by first typing the double-quote key, then the "o." Note that nothing will appear until the "o" is typed. If you were to type the double-quote twice in succession with the deadkey toggle on, you would get one double-quote character on the screen. The little letters on the right side in the box at the bottom indicate the various states of the toggles:

D = Deadkey (Control-Clr-Home)
A = Special Characters (Alternate-X)
I = Insert Mode (Insert)
T = Typeover Mode (Insert)
C = (Capslock)

For further help, see the manual and/or the file HELP.TXT Magniwriter ST can also print out a function key template for you to place above your function key row. Load the file TEMPLATE.TXT and print it. Your printer needs to know the Epson control codes for condensed text to print it correctly.

I hope you enjoy Magniwriter ST. Perhaps you can get the kids interested in using a word processor with the large letters.

Dr. Noonan is an ophthalmic surgeon in private practice. He has been continually updating and improving ST Writer since 1986. He has also written a medical program for the ST that calculates intraocular lens powers for artificial lens transplants in cataract surgery patients.