pm16579@uxa.cso.uiuc.edu (08/29/90)
A couple of people have asked me to post this, so here goes. It is the original docs (minus a coupla paragraphs, and configured for an Epson printer) for SpeedScript 3.0. Hopefully, the control characters for underline and italics will transfer OK. -------------------------cut here--------------------------------------------- SPEEDSCRIPT 3.0 All machine language processor for Atari originally printed May, 1985 COMPUTE! 1985 Charles Brannon, Program Editor documentation by Paulito Mendoza 1990 4SpeedScript 3.0,5 though compact in size (8K), has many features found on commercial word processors. 4SpeedScript5 is also very easy to learn and use. You type in everything first; preview and make corrections on the screen; insert and delete words, sentences, and paragraphs; then print out an error-free draft, letting 4SpeedScript5 take care of things like margins, centering, headers and footers. -1ENTERING TEXT-0 When you run 4SpeedScript5, the screen colors change to black on white. The first line on the screen is black with white letters. 4SpeedScript5 presents all commands on this 4command line5. The remaining 18 lines of the screen are used to enter, edit, and display your document. 4SpeedScript5 makes use of a special but little-used Atari character mode that permits larger, more readable characters with true lowercase descenders. The screen still shows up to 40 columns; only five rows are sacrificed. We think you'll agree that this is the most readable text you've ever seen on an Atari--perfect for word processing. (Technical note: 4SpeedScript5 starts at $1F00, and the ANTIC 3 character set is embedded at $2000.) The cursor, a blinking square, shows where the next character you type will appear on the screen. 4SpeedScript5 lets you move the cursor anywhere within your document, making it easy to find and correct errors. To begin using 4SpeedScript5, just start typing. When the cursor reaches the right edge of the screen, it automatically jumps to the beginning of the next line, just as in BASIC. But unlike BASIC, 4SpeedScript5 never splits words at the right edge of the screen. If a word you're typing won't fir at the end of one line, it's instantly moved to the next line. This feature, called 4word-wrap5 or 4parsing5, also helps to make your text more readable. -1SCROLLING AND SCREEN FORMATTING-0 When you finish typing on the last screen line, 4SpeedScript5 automatically scrolls the text upward to make room for a new line at -1SPEEDSCRIPT 3.0 documentation page 2-0 the bottom. Imagine the screen as an 18-line window on a long, continuous document. If you've unplugged all cartridges or disabled BASIC, there's room in memory for 3328 characters of text with 24K of RAM and up to 27,904 characters on a 48K machine. (Unfortunately, 4SpeedScript 3.05 cannot make use of the extra memory available in the XL and XE series.) An additional 2K of text memory is available if 4SpeedScript5 is loaded from a boot tape. To check at any time how much unused space is left, press CTRL-U (hold down the CTRL key while pressing the U key.) The number appearing in the command line window indicates how much 4unused5 room remains for characters of text. If you're used to a typewriter, you'll have to unlearn some habits if this is your first experience with word processing. Since the screen is only 40 columns wide, and most printers have 80- and 132-column carriages, it doesn't make sense to press RETURN at the end of each line as you would on a typewriter. 4SpeedScript's5 word-wrap takes care of this automatically. Press RETURN only when you want to force a carriage return to end a paragraph or limit the length of a line. A 4return mark5 appears on the screen as a crooked left-pointing arrow. -1USING THE KEYBOARD-0 Most features are accessd with control-key commands--you hold down CTRL while pressing another key. In this article, control-key commands are abbreviated CTRL-4x5 (where 4x5 is the key you press in combination with CTRL.) An example is the CTRL-U mentioned previously to check on unsued memory. CTRL-E means hold down CTRL and press E. Sometimes you must also hold down th OPTION button to select a special option of a command, such as OPTION-CTRL-H. Other keys are referenced by name or function, such as DELETE/BACK S for the backspace key, CTRL-CLEAR for the clear screen key, and 4cursor-left5 or CTRL-+ for the cursor left key. See the chart at the end of this document for a complete reference of all keyboard commands. Some keys let you move the cursor to different places in the document to make corrections or scroll text into view. You can move the cursor by character, word, sentence, or paragraph. Here's how to control the cursor: The CURSOR LEFT/RIGHT keys (CTRL-+ and CTRL-*) work as usual; pressing CTRL-* moves the cursor right (forward) one space, and CTRL-+ moves the cursor left (backward) one space. The CURSOR UP/DOWN keys (CTRL-minus and CTRL-=) move the cursor to the beginning of either the next or previous sentence. Press CTRL-minus to move the cursor up (backward) to the beginning of the previous sentence. Press CTRL-= to move the cursor down (forward) to the beginning of the next sentence. SHIFT-+ moves the cursor left (backward) to the beginning of the previous word. SHIFT-* moves the cursor right (forward) to the -1SPEEDSCRIPT 3.0 documentation page 3-0 beginning of the next word. If you get confused, just look at the arrows on the keys as a reminder. SHIFT-minus moves the cursor up (backward) to the beginning of the previous paragraph. SHIFT-= moves the cursor down (forward) to the beginning of the next paragraph. Again, look at the arrows on these keys for a reminder. A paragraph always ends with a return-mark. The START button, pressed once, moves the cursor to the top (start) of the screen without scrolling. Pressed twice, it moves the cursor to the beginning of the document. CTRL-Z moves the cursor to the end of the document, scrolling if necessary. It's easy to remember since Z is at the end of the alphabet. For special applications, if you ever need to type the actual character represented by a command or cursor key, press ESC before typing the CTRL key. Press ESC twice to get the ESCape character, CHR$(27). -1CORRECTING YOUR TYPING-0 Sometimes you'll have to insert some characters to make a correction. Use CTRL-INSERT to open up a single space, just as in BASIC. Merely position the cursor at the point where you want to insert a space, and press CTRL-INSERT. It can be tedious to use CTRL-INSERT to open up enough space for a whole sentence or paragraph. For convenience, 4SpeedScript5 has an insert mode that automatically inserts space for ech character that you type. In this mode, you can't type over characters; everything is inserted at the cursor position. To enter insert mode, press CTRL-I . To cancel insert mode, press CTRL-I again. To let you know that you are in insert mode, the black line at the top of the screen turns blue. Insert mode is the easiest way to insert text, but it can become too slow when inserting near the top of a very long document because it must move 4all5 the text following the cursor position. So 4SpeedScript5 has even more ways to insert blocks of text. One way is to use the TAB kay. It is programmed in 4SpeedScript5 to act as a five-space margin indent. To end a paragraph and start another, press RETURN twice and press TAB. TAB always inserts; you don't need to be insert mode. You can also use TAB to open up more space then CTRL-INSERT. (You cannot set or clear tap stops in 4SpeedScript5 as you can in the noraml screen editor.) No matter how much space you want to insert, each insertion takes the same amount of time. So the TAB key can insert five spaces five times faster than pressing CTRL-INSERT five times. -1SPEEDSCRIPT 3.0 documentation page 4-0 There's even a better way, though. Press SHIFT-INSERT to insert 255 spaces (It does not insert a line; use RETURN for that.) You can press it several times to open up as much space as you need. And SHIFT-INSERT is 4fast.5 It inserts 255 spaces as fast as CTRL-INSERT opens up one space. Now just type the text you wanted to insert over the blank space. (You don't want to be in CTRL-I insert mode when you do this trick; that would defeat its purpose.) Since the DELETE/BACK S key (backspace) is also slow when working with large documents (it, too, must move all text following the cursor), you may prefer to use the cursor-left key to backspace when using this method. After you're done inserting, there may be some inserted spaces left over that you didn't use. Just press SHIFT-DELETE/BACK S. This instantly deletes all extra spaces between the cursor and the start of the following text. It's also useful whenever you need to delete a block of spaces for some reason. -1ERASING TEXT-0 Press DELETE/BACK S by itself to erase the character to the left of the cursor. All the following text is pulled back to fill the vacant space. Press CTRL-DELETE/BACK S to delete the character on which the cursor is sitting. Again, all the following text is moved toward the cursor to fill the empty space. These keys are fine for minor deletions, but it could take all day to delete a whole paragraph this way. So 4SpeedScript5 has two commands that can delete an entire word, sentence, or paragraph at a time. CTRL-E erases text 4after5 (to the right of) the cursor position, and CTRL-D deletes text 4behind5 (to the left of) the cursor. To use the CTRL-E erase mode, first place the cursor at the beginning of the word, sentence, or paragraph you want to erase. Then press CTRL-E. The command line shows the message "Erase (S,W,P): RETURN to exit". Press S to erase a sentence, W for a word, or P for a paragraph. Each time you press one of these letters, the text is quickly erased. You can keep pressing S, W, or P until you've erased all the text you wish. Then press RETURN to exit the erase mode. The CTRL-D delete mode works similarly, but deletes only one word, sentence, or paragraph at a time. First, place the cursor after the word, sentence, or paragraph you want to delete. Then press CTRL-D. Next, press S, W, or P for sentence, word, or paragraph. The text is immediately deleted and you return to editing. You don't need to press RETURN to exit the CTRL-D delete mode unless you pressed this key by mistake. 4(In general, you can escape from any command in 5SpeedScript4 by simply pressing RETURN.)5 CTRL-D is most convenient -1SPEEDSCRIPT 3.0 documentation page 5-0 when the cursor is already past what you've been typing. -1THE TEXT BUFFER-0 When you erase or delete with CTRL-E and CTRL-D, the text isn't lost forever. 4SpeedScript5 remembers what you've removed by storing deletions in a separate area of memory called a 4buffer.5 The buffer is a failsafe device. If you erase too much, or change your mind, just press CTRL-R to restore the deletion. However, be aware that 4SpeedScript5 remembers only the last erase or delete you performed. Another, more powerful, use of this buffer is to move or copy sections of text. To move some text from one location to another, first erase or delete it with CTRL-E or CTRL-D. Then move the cursor to where you want the text to appear and press CTRL-R. CTRL-R instantly inserts the contents of the buffer at the cursor position. If you want to copy some text from one part of your document to another, just erase or delete it with CTRL-E or CTRL-D, restore it at the original position with CTRL-R, then move the cursor elsewhere and press CTRL-R to restore it again. You can retrieve the buffer with CTRL-R as many times as you like. If there is no room left in memory for inserting the buffer, you'll see the message "MEMORY FULL." Important: The CTRL-E erase mode lets you erase up to the maximum size of the buffer (2K for disk, about 6K for tape), and CTRL-E also removes the previous contents of the buffer. Keep this in mind if there's something in the buffer you'd reather keep. If you don't want the buffer to be erased, hold down the OPTION key while you press CTRL-E. This preserves the buffer contents and adds newly erased text into the buffer. If you ever need to erase the contents of the buffer, press CTRL-K (4kill buffer.5) -1THE WASTEBASKET COMMAND-0 If you want to start a new document, or simply obliterate all your text, hold down OPTION while you press SHIFT-CLEAR (that's not a combination you're likely to press accidentally). 4SpeedScript5 asks, "ERASE ALL TEXT: Are you sure? (Y/N)." This is your last chance. If you 4don't5 want to erase the entire document, press N or any other key.Press Y to perform the irreversible deed. There is no way to recover text wiped out with Erase All. -1SEARCH AND REPLACE-0 4SpeedScript5 has a Fine command that searches through your document to find a selected word or phrase. A Change option lets you automatically change one word to another throughout the document. OPTION-CTRL-F (4find5) activates the search feature, OPTION-CTRL-C (4change5) lets you selectively search and replace, and CTRL-G -1SPEEDSCRIPT 3.0 documentation page 6-0 (4global5) is for automatically searching and replacing. Searching is a two-step process. First you need to tell 4SpeedScript5 what to search for, then you trigger the actual search. Hold down OPTION and press CTRL-F. The command line prompts "Find:" Type in what you'd like to search for, the 4search phrase5. If you press RETURN alone without typing anyhting, the Find command is cancelled. When you are ready to search, press CTRL-F. 4SpeedScript5 looks for the next occurrence of the search phrase 4starting from the current cursor position.5 If you want to hunt through the entire document, press START twice to move the cursor to the very top before beginning the search. Each time you press CTRL-F, 4SpeedScript5 looks for the next occurrence of the search phrase and places the cursor at the start of the phrase. If the search fails, you'll see the message "Not found." CTRL-C works together with CTRL-F. After you've specified the search phrase with OPTION-CTRL-F, press OPTION-CTRL-C to select the replace phrase. (You can press RETURN alone at the "Change to:" prompt to select a 4null5 replace phrase. When you hunt and replace, this deletes the located phrase.) To manually search and replace, start by pressing CTRL-F. After 4SpeedScript5 finds the seach phrase, press CTRL-C if you want to replace the phrase. If you don't wnat to replace the phrase, don't press CTRL-C. You are not in a special search and replace mode. You're free to continure writing at any time. CTRL-G links CTRL-F and CTRL-C together. It first asks "Find:", then "Change to:", then automatically searches and replaces throughout the document starting at the cursor position. There are a few things to watch out for when using search and replace. First, realize that if you search for "the," 4SpeedScript5 finds the embedded "the" in words like "therefore" and "heathen." If you changed all occurrences of "the" to "cow," these words would become "cowrefore" and "heacown." If you want tofind a dingle word, include a space as the first character of the word, since almost all words are preceded by a space. Naturally, if you are replacing, you need to include the space in the replace phrase, too. Also, 4SpeedScript5 distinguishes between upper- and lower-case. The word "Meldids" does not match with "meldids." 4SpeedScript5 will not find a capitalized word unless you capitalize it in the search phrase. To cover all bases, you will sometimes need to make two passes at replacing a word. Keep these things in mind when using CTRL-G, since you don't have a chance to stop a global search and replace. -1STORING YOUR DOCUMENT-0 Just press CTRL-S to store a document. You'll see the prompt "Save : -1SPEEDSCRIPT 3.0 documentation page 7-0 (Device:Filename)>". Type C; for cassette or D: plus a legal Atari filename for disk. If you use the same name as a file already on disk, that file will be replaced by the new one. CTRL-S always saves the entire document. The cursor position within the document is not important. When the SAVE is complete, 4SpeedScripto reports "no errors" if all is well, or gives a message like "Error #144" if not.5 Check your DOS or BASIC manual for a list of error numbers and their causes. -1LOADING A DOCUMENT-0 To recall a previously saved document, press CTRL-L. Answer the "Load: (Device:Filename)>" prompt with the filename. Again, remember to include the C: for cassette or D: for disk. 4SpeedScript5 loads the file and should display "no errors." Otherwise, 4SpeedScript5 reports the error number. 4The position of the cursor is important before loading a file.5 Documents start loading at the cursor position, so be sure to press START twice or OPTION-SHIFT-CLEAR (Erase All) to move the cursor to the start of the text, unless you want to merge two documents. When you press CTRL-L to load, the command line turns green to warn you if the cursor is not at the top of the document. To merge two or more files, simply load the first file, press CTRL-Z to move the cursor to the end of the document, and then load the file you want to merge. Do not place the cursor somewhere in the middle of your document before loading. A Load does not insert the text from tape or disk, overwrites all text after the cursor position. The last character loaded becomes the new end-of-text pointer, and you cannot access any text that appears ahead of this pointer. Since 4SpeedScript5 stores files in ASCII (American Standard Code for Information Interchange), you can load any ASCII file with 4SpeedScript5. You could write a BASIC program with 4SpeedScript5, save it on disk, then use ENTER to read the file from BASIC. In BASIC, you can store a program in ASCII form with LIST "D:filename" for disk or LIST "C:" for tape, ready to load with 4SpeedScript5. You can even load files produced by most other word processors, and most word processors can read 4SpeedScript5 files. You can make full use of 4SpeedScript's5 editing features to prepare ASCII files for the Atari 4Assembler/Editor, MAC/65, 5and most other Atari assemblers. And 4SpeedScript5 files can be transferred via modem with your favorite telecommunications program that handles ASCII (such as "JTERM," published in the January 1985 issue of COMPUTE!). -1DISK COMMANDS-0 Sometimes you forget the name of a file, or need to delete or rename a file. 4SpeedScript5 provides a unique miniDOS for your convenience. -1SPEEDSCRIPT 3.0 documentation page 8-0 Just press CTRL-M (4menu5). 4SpeedScript5 reads the entire disk directory and puts it on the screen in three columns. A large cursor shows you which file is currently selected. Use the cursor keys to move the cursor to the file you want to select. A menu at the bottom of the screen shows you what keys you need to press. Press CTRL-D to delete the selected file, R to rename, L to Lock, U to unlock, or F to format the disk. You can load the selected file by pressing CTRL-L. The position of the cursor is not important when loading a file from the menu--4SpeedScript5 always erases anything you previously had in memory. Any changes you make to the directory will not show up until you call the directory again. Press 1,2,3 or 4 to update the directory from drive 1-4. This also sets the default disk drive, the drive accessed for further changes. When you're ready to return to writing, press either ESC or the RETURN key. -1ADDITIONAL FEATURES-0 4SpeedScript5 has a few commands that don't do much, but are nice to have. CTRL-X exchanges the character under the cursor with the character to the right of the cursor. Thus you can fix transposition errors with a single keystroke. CTRL-A changes the character under the cursor from uppercase to lowercase or vice versa. Press CTRL-B to change the background and border colors. Each time you press CTRL-B, on eof 128 different background colors appears. Press CTRL-T (4text5) to cycle between one of eight text luminances. The colors are preserved until you cahnge them or reboot 4SpeedScript.5 If your TV suffers from 4overscanning5, some characters on the left or right margin may be chopped off. Atari 4SpeedScript5 lets you widen and narrow the width of the screen. Press OPTION-CTRL-+ (the cursor left key) to decrease the width of the screen. Each time you press it, the text is reformatted, and the left and right screen margins are adjusted by one character. You can decrease the width all the way down to two characters (although if your screen overscans that much, it's time to buy a new TV). To increase the width, up to a maximum of 40 (the default width), press OPTION-CTRL-* (the cursor right key). One disadvantage of word wrapping is that it's hard to tell exactly how many spaces are at the end of a screen line. When a word too long to fit on a line is wrapped to the next line, the hole it left is filled with "false" spaces. That is, the spaces are not actually part of your text, and won't appear on paper. If you want to distinguish between true spaces and false spaces, press CTRL-O (4on/off5). The false spaces become tiny dots. You can write and edit in this mode if you wish, or turn off the feature by pressing CTRL-O again. Atari 4SpeedScript5 disables the BREAK and inverse video keys when you're entering or editing text. The inverse video key was disabled -1SPEEDSCRIPT 3.0 documentation page 9-0 because it is frequently pressed by accident on the 800 and 800XL models. If you want to enter inverse video characters, hold down SELECT while typing the keys. Atari 400 and 800 owners will notice that the action of the CAPS/LOWR key has been changed in 4SpeedScript5. It works like the CAPS key on the XL and XE models. Press it once to switch to uppercase, and again to switch to lowercase. In other words, the CAPS/LOWR key toggles between upper- and lowercase. You can still use SHIFT-CAPS/LOWR to force entry to all uppercase. CTRL-CAPS/LOWR has no effect. Pressing SYSTEM RESET returns you to 4SpeedScript5 without erasing your text when using Atari DOS. With OS/A+ DOS, SYSTEM RESET returns you to the DOS prompt. You can get back to 4SpeedScript5 without losing any text if you type RUN at the prompt. -1PRINT!-0 If you already think 4SpeedScript5 has plenty of commands, wait until you see what the printing package has to offer. 4SpeedScript5 supports an array of powerful foramtting features. It automatically fits your text between left and right margins you can specify. You can center a line or block it against the right margin. 4SpeedScript5 skips over the perforations on continuous-form paper, or can wait for you to insert single-sheet paper. A line of text can be printed at the top of each page (a 4header5) and/or at the bottm of each page ( a 4footer5), and can include automatic page numbering, starting with whatever number you like. 4SpeedScript5 can print on different lengths and widths of paper, and single-, double-, triple-, or any spacing is easy. You can print a document as big as can fit on a tape or disk by linking several files together during printing. You can print to the screen or to a file instead of a printer. Other features let you send special codes to the printer to control features like underlining, boldfacing, and double-width type (depending on the printer). But with all this power comes the need to learn additional commands. Fortunately, 4SpeedScript5 sets most of these variables to a default state. If you don't change these settings, 4SpeedScript5 assumes a left margin of five, a right margin of 75, no header or footer, single-spacing, and continuous- paper feeding. You can change these default settings, if you want (see below). Before printing, be sure the paper in your printer is adjusted to top-of-form (move the paper perforation just above the printing element). One additional note: some printers incorporate an automatic skip-over-perforation feature. The printer skips to the next page when it reaches the bottom of the page. Since 4SpeedScript5 already controls paper feeding, you need to turn off this automatic skip-over-perf feature before running 4SpeedScript5, or paging won't work properly. -1SPEEDSCRIPT 3.0 documentation page 10-0 To begin printing, simply press CTRL-P. 4SpeedScript5 prompts "Print: (device:Filename)>". You can print to almost any device, even disk or cassette. If you enter E: (for Editor), 4SpeedScript5 prints to the screen, letting you preview where lines and pages break. Enter P to print for most printers. If your printer is attached, powered on, and selected (online), 4SpeedScript5 begins printing immediately. To cancel printing, hold down the BREAK key until printing stops. You can use CTRL-1 to pause printing. Press CTRL-1 again to continue. If you need to print to an RS-232 rpinter, just print to a disk file, then boot up your DOS master disk and use the copy selection to copy the print file to the R: device. You can also write BASIC programs to read and process a Printed disk file. Remember, a Print to disk is not the same as a Save to disk. -1FORMATTING COMMANDS-0 The print formatting commands must be distinguished from normal text, so they appear on-screen in inverse video with the text and background colors switched. As mentioned above, the regular inverse video key is not used for entering inverse video text. Instead, hold down the SELECT key while typing a format key. All lettered printer commands should be entered in lowercase (unSHIFTed). During printing, 4SpeedScript5 treats these characters as printing commands. There are two kinds of printing commands, which we'll call Stage 1 and Stage 2. Stage 1 commands usually control variables such as left margin and right margin. Most are followed by a number, with no space between the command and the number. Stage 1 commands are executed before a line is printed. Stage 2 commands, like centering and underlining, are executed while the line is being printed. Usually Stage 1 commands must be on a line of their own, although you can group together several Stage 1 commands together on a line. Stage 2 commands are by nature embedded within a line of text. Again, remember to hold down SELECT to enter the formatting commands detailed here. -1Stage 1 Commands-0 l Left margin. Follow with a number from 0 to 255. Use 0 for no margin. Defaults to 5. r Right margin position, a number from 1 to 255 Defaults to 75. Be sure the right margin value is greater than the left margin value, or 4SpeedScript5 will go bonkers. t Top margin. The position at which the first line of text is -1SPEEDSCRIPT 3.0 documentation page 11-0 printed, relative to the top of the page. Defaults to 5. The header (if any) is always printed on the first line of the page, before the first line of text. b Bottom margin. the line at which printing stops before continuing to the next page. Standard 8 1/2 x 11-inch paper has 66 lines. Bottom margin defaults to the 58th line. Don't make the bottom margin greater than the page length. p Page length. Defaults to 66. If your printer does not print six lines per inch, multiply lines-per-inch by 11 to get the page length. European paper is usually longer then American paper--11 5/8 or 12 inches. Try a page length of 69 or 72. s Spacing. Defaults to single spacing. Follow with a number from 1 to 255. Use 1 for single-spacing, 2 for double-spacing, 3 for triple-spacing. @ Start numbering 4at5 page number given. Page numbering normally starts at 1. ? Disables printing until selected page number is reached. For example, a value of 3 would start printing the third page of your document. Normally, 4SpeedScript5 prints starting with the first page. x Selects the page width, in columns (think 4 a cross5). Defaults to 80. You need to change this for the sake of the centering command if you are printing in double-width or condensed type, or are using a 40-column or wide-carriage printer. n forced paging. m Margin release. Disables the left margin for the next printed line. It's used for outdenting. Remember that this executes before the line is printed. w Page wait. This command should be placed at the beginning of your document before any text. With page wait turned on, 4SpeedScript5 prompts you to "Insert next sheet, press RETURN" when each page is finished printing. Insert the next sheet, line it up with the printhead, then press RETURN to continue. Page wait is ignored during disk or screen output. j Selects automatic linefeeds after carriage return. Like w, this command must be placed before any text. Don't use this command to achieve double-spacing, but only if all text prints on the same line. i Inforamtion. This works like REM in BASIC. You follow the command with a line of text, up to 255 characters, ending in a return mark. This line will be ignored during printing, and is handy for amking notes to yourself such as the filename of the document. h Header define and enable. The header must be a single line of -1SPEEDSCRIPT 3.0 documentation page 12-0 text (up to 254 characters) ending in a return-mark. The header prints on the first line of each page. You can include Stage 2 commands such as centering and page numbering in a header. You can use a header by itself without a footer. The header and footer should be defined at the top of your document, before any text. If you want to prevent the header from printing on the first page, put a return-mark by itself at the top of your document before the header definition. f Footer define and enable. The footer must be a single line of text (up to 254 characters) ending in a return-mark. The footer prints two lines prior to the last line of each page. As with the header, you can include Stage 2 printing commands, and you don't need to set the header to use a footer. g goto (link) the next file. Put this command as the last line in your document. Follow the command with the filename, including D: for disk. After the text in memory is printed, the link command loads the next file into memory. You can continue linking in successive files, but don't include a link in the last file. Before you start printing a linked file, make sure the first of the linked files is in memory. When printing is finished, the last file linked will be in memory. -1Stage 2 Commands-0 These commands either precede a line of text, or are embedded within one. c Centering. Put this at the beginning of a line you wish to center. This will center only one line ending in a return-mark. Repeat this command at the beginning of every line you want centered. Centering uses the page-width setting (see above) to properly center the line. To center a double-width line, either set the page width to 40 or pad out the rest of the line with an equal number of spaces. If you use double width, remember that the spaces preceding the centered text will be double-wide spaces. # When 4SpeedScript5 encpunters this command, it prints the current page number. You usually embed this within a header or footer. u A simple form of underline. It works only on printers that recognize a CHR$(8) as a backspace and CHR$(95) as an underline character. Underlining works on spaces, too. Use the first u to start underlining, and another one to turn off underlining. -1FONTS AND STYLES-0 -1SPEEDSCRIPT 3.0 documentation page 13-0 Most dot-matrix printers are capable of more than just printing text at ten characters per inch. Some printers have several character sets, with italics and foreign language characters. Most can print in double width (40 characters per line), condensed (132 characters per line), and in either pica or elite. Other features include programmable characters, programmable tab stops, and graphics modes. Many word processors customize themselves to a particular printer, but 4SpeedScript5 lets you define your own Stage 2 printing commands. You define a programmable 4printkey5 by choosing any character that is not already used for other printer commands. The entire uppercase alphabet is available for printkeys, and you can choose letters that are related to their function (like D for double width). You enter these commands like printer commands, by holding down SELECT as you type them. The printkeys are like variables in BASIC. To define a printkey, just hold down SELECT while you type the key you want to assign as the printkey, then an equal sign (=), and finally the ASCII value to be substituted for the printkey during printing. Now whenever 4SpeedScript5 encounters the printkey embedded in the text, it prints the character with the ASCII value you previously defined. For example, to define the + key as the letter z, you first look up the ASCII value of the letter z (in either your printer manual or any Atari manual). The ASCII value of the letter z is 122, so the definition is: +=122 Now, anywhere you want to print the letter z, substitute the printkey: Gad+ooks! The +oo is +any! This would appear on paper as Gadzooks! The zoo is zany! More practically, here's how you could program italics on an Epson MX-80 compatible printer. You switch on italics by sending an ESC (a character with an ASCII value of 27), then the character 4.You turn off italics by sending ESC 5. So define SHIFT-E as the escape code. Anywhere you want to print a word in italics, bracket it with printkey E then 4 and printkey E then 5: The word 4Italics5 is in italics. You can similarly define whatever codes your printer uses for features like double width or emphasized mode. For your convenience, four of the printkeys are predefined, though you can change them. The -1SPEEDSCRIPT 3.0 documentation page 14-0 keys 1-4 are defined as 27,14,15, and 18, common values for most printers. On most printers, CHR$(27) is the ESCape key, CHR$(14) starts double-width, CHR$(15) either stopd double-width or starts condensed characters, and CHR$(18) usually cancels condensed characters. 4SpeedScript5 actually lets you embed any character within text, so you may prefer to put in the actual printer codes as part of your text. To set italics, you could just press ESC twice, then 4. The ESC key appears in text as a mutant E. Double width has a value of 14, the same value as CTRL-N. To start double-width, just embed a CTRL-N. Remember that you must press ESC before any CTRL key to get it to appear in text. CTRL keys appear as small "shadowed" capital letters. These characters, though, are counted as part of the length of a line, and excessive use within one line can result in a shorter than normal line. It can be more convenient to use printkeys, since if you ever change printers, you have to change only the definitions of the keys. Keep one thing in mind about printkeys. 4SpeedScript5 always assumes it is printing to a rather dumb, featureless printer, the least common denominator. 4SpeedScript5 doesn't understand the intent of a printkey; it just sends out its value. So if you make one word within a line double-width, it may make the line overflow the specified right margin. There's no way for 4SpeedScript5 to include built-in font and typestyle codes without being customized for a particular printer, since no set of codes is universal to all printers. -1HINTS AND TIPS-0 It may take you a while to fully master 4SpeedScript5, but as you do you'll discover many ways to use the editing and formatting commands. For example, there is a simple way to simulate tab stops, say for a columnar table,. Just type a period at every tab stop position. Erase the line with a CTRL-E, then restore it with CTRL-R multiple times. When you are filling in the table, just use word left/word right to jump quickly between the periods. Or you can use the programmable printkeys to embed your printer's own commands for setting and jumping to tab stops. You don't have to change or define printer commands every time you write. Just save these definitions, and load this file each time you write. You can create many custom definition files and have them ready to use on a disk. You can create customized "fill in the blank" letters. Just type the letter, and everywhere you'll need no insert something, sustitute a unique character, such as an * or a CTRL character. When you're ready to customize the letter, use Find to locate each symbol and insert the specific information. Instead of typing an oft-used word or phrase, susbtitute a unique character, then use CTRL-G to globally change those characters into the actual word or phrase. You can even use 4SpeedScript5 as a simple filing program. Just type in all your data, flagging each field with a unique character. you can use Find to quickly locate any field. -1SPEEDSCRIPT 3.0 documentation page 15-0 -1SPEEDSCRIPT 3.0 documentation page 16-0 -1KEYBOARD SUMMARY-0 CURSOR MOVEMENT CTRL-+ move left (backward) one space CTRL-* move right (forward) one space CTRL-minus move left (backward) to the beginning of the previous sentence CTRL-= move right (forward) to the beginning of the next sentence SHIFT-+ move left (backward) to the beginning of the previous word SHIFT-* move right (forward) to the beginning of the next word SHIFT-minus move left (backward) to the beginning of the previous paragraph SHIFT-= move right (forward) to the beginning of the next paragraph START press once to go to the top of the screen; press twice to go to the top of the file CTRL-Z go to the end of the file -1INSERTING and DELETING TEXT-0 CTRL-I toggle insert mode CTRL-INSERT insert a single space at the cursor TAB insert 5 spaces SHIFT-INSERT insert 255 spaces DELETE delete one character SHIFT-DELETE deletes all spaces from the cursor to the start of the following text CTRL-E erase text after cursor to buffer CTRL-D erase text before cursor to buffer CTRL-R restore text in buffer to cursor position -1SPEEDSCRIPT 3.0 documentation page 17-0 CTRL-K kill contents of buffer OPT-SHFT-CLR erase all text -1SEARCH and REPLACE-0 OPT-CTRL-F define search phrase CTRL-F search, starting at current cursor position OPT-CTRL-C define replace phrase CTRL-C replace with replace phrase CTRL-G global search and replace; new phrases defined -1I/O COMMANDS-0 CTRL-S store document CTRL-L load document CTRL-M disk menu -1MISCELLANEOUS COMMANDS-0 CTRL-U display memory size remaining CTRL-X exchange character under cursor with character to the right of the cursor CTRL-A switch character under cursor upper/lowercase CTRL-B change background color CTRL-T change text luminance OPT-CTRL-+ decrease screen width OPT-CTRL-* increase screen width CTRL-O display false spaces -1PRINTING AND FORMATTING-0 CTRL-P print file -1SPEEDSCRIPT 3.0 documentation page 18-0 STAGE ONE COMMANDS: l left margin (0-255) r right margin (1-255) t top margin (1-255) b bottom margin (1-255) p page length (1-255) s spacing (1-255) @ define page numbering start ? disables printing until page number x set page width, in columns n force page break m margin release w page wait j select automatic linefeeds after carriage returns i REM command h header define and enable f footer define and enable g link next file