H y p e r A N S I Version 1.07 Copyright (C) 1993 Mike D. Nelson All rights reserved Introduction HyperANSI is a program which allows you to easily create ANSI graphics with minimum effort. HyperANSI is SHAREWARE, copyrighted (c) by Michael D. Nelson. You are entitled to use this program (evaluation purposes only) for a period of 30 days. If you find the program useful please send in a donation. The registered version will also include a laser-printed manual with manual in half-page format for convenient storage, for a minumum donation of $25US ($30 CAN) NOTE: Unlike previous releases of HyperANSI, this version has no "crippled" features, and no longer displays that annoying delay screen. Installing HyperANSI requires that you have Hyperansi.font installed in your FONTS: directory. Use Copy HyperANSI/FONTS ALL FONTS: to properly install the font. HyperANSI/FONTS is the location of the FONTS directory from the HyperANSI.LHA archive file. It is also advisable to use Workbench 2.x for the ASL file requester, which is MUCH better than the file requester included for 1.3 users. HyperANSI menus This portion of the manual follows the same format as the program's menus. Functions not available through the menus will be described seperately. If any key shortcuts exist, they will be listed after KEYS: in the descriptions. Additional features are described in the section entitled "Other Stuff." Project Menu New Erase all pages, and return to page 1. You will be asked if you are sure first. KEYS: Alt-N, RA-N There is no way to get your data back after executing this Function! Be careful! Load Load a file. Select the file you want to load using the file requester. You can load ANSI, ASCII or HYPER files. The file requester is the ASL requester for 2.04+ users, and a custom file requester for 1.3 users. KEYS: Alt-L, RA-L Future versions may support the ARP requester instead of the custom requester. Save Save Project. You will be presented with the Save Format requester. Choose whether you want to save the file as ANSI, ASCII or in the HYPER format. You can also specify the page range to use. Pages falling outside the selected range will not be saved. If you select the HYPER format the page range has no effect -- every page in use will be saved. KEYS: Alt-S, RA-S Print This will print everything to PRT:. The program first applies IBM to AMIGA remapping, as the printer drivers are expecting the Amiga's character set, not the IBM character set. Use the Workbench's Preferences program to change your printer settings. Screen Title Toggles the screen's title bar on and off. About Displays information about the program. This window closes when you hit a key or mouse button. Commands Displays a summary of all HyperANSI commands, and the keys needed to activate them. While the list only displays the ALT key combinations, many also have corresponding Right Amiga key combinations. This window closes when you hit a key or mouse button. KEYS: Alt-Z, RA-Z Quit Quit the program. You will be asked if you are sure first. If you select OKAY, the program will exit and any unsaved pages will be lost. Select CANCEL if you don't want to exit. KEYS: Alt-X, RA-X Modes Menu Block Block is the most important function of HyperANSI. Selecting Block will result in a prompt asking you to select one corner of the blocked area. Use the cursor keys to move the onscreen cursor and hit RETURN to lock it in, or use the mouse button and click on the corner. The cursor will now turn into a rubber band, which you can drag with either the cursor keys or the mouse (the mouse button should not be held down), enclosing the area you want to block. Hit RETURN (or a mouse button) to set the blocked area. You will now see the first level of the available block options. KEYS: Alt-B, RA-B The Blocking functions are described in detail later in this document. (see Blocking Functions) A faster method of blocking uses the double clicking function, without having to select Block from the menu or use the keyboard selection keys. To activate a block, simply double click on a corner and you will immediately get the rubber band. If you cannot get this to work, then you should change you preferences on your machine. Users with 1.3 machines should have their double-click preference set to about 75% (the vertical prop gadget on the right side of the preferences screen) and 2.04+ users should have the Input preferences set to about 1.5 seconds for Double-Click. These settings are not specifically required, but they work. Use whatever you find comfortable. When selecting Block from keyboard or menu (not by double clicking) you will have an option to 'Use Last', If you press 'L' the last blocking coordinates will be restored. Draw This will cause cursor movements to leave a line. The program will follow where you go and what you draw over, trying to map the proper characters onscreen. The characters used depend on the current Function key set. Function sets greater than 4 will use the Set 1 characters. More information on Functions sets can be found in the EDIT menu descriptions under Function Keys. KEYS: Alt-D, RA-D Half The IBM font has two 'half' characters, one is the top half and the other is the bottom. This mode will change the cursor to the half size, and then calculate (in real time) whether to use the top or bottom half while still retaining the color of existing half characters. The submenu has two selections; Normal and Lines. The Normal mode will only draw when the left mouse button is being held down. The Lines mode will 'draw' between any mouse button clicks, which allows you to create straight lines (well, as straight as possible with ANSI). The Normal and Lines modes both use a tweening function, meaning the program will not leave gaps if you move the mouse faster than the program can kept up. KEYS: Alt-H, RA-H (Normal), Alt-J, RA-J (Lines) ANSI only allows HIGH INTENSITY (The brightest colors) for the foreground color, therefore if you attempt to draw a High Intensity color on another High Intensity color, the existing color will be changed to the equivalent Low Intensity color. This problem will not occur, with High on Low or Low on High. Macro Selects one of two Submenu options. The first option is record. When you select this, a red R will appear in the status window indicating that everything you do is being recorded. You are limited to macros less than 4000 characters (which is quite a lot of room). When you reach the limit, the R in the status window will turn off. When recording, the mouse input is turned off, and any requester will have to be manually closed when played back. The second option is Macro play. This will play back whatever you recorded. KEYS: Alt-R, RA-R (Record), CTRL-P (Play) While recording a macro, you can create an endless macro if you wish. Just select Play BEFORE turning off the macro recording. The macro record indicator (R) will go out. Now press CRTL-P or select it from the menu. The macro will play endlessly! You can only stop it by pressing the left mouse button! Paint This allows you to paint colors and characters onscreen. You will be prompted to specify the paint mode you wish to use; Attribute uses the current foreground and background colors without affecting existing characters. Foreground only uses the current foreground color, existing background colors and characters will not be affected. Background only uses the current background color, existing foreground colors and characters will not be affected. Character will prompt you for the character to paint with (which can be changed at any time after by pressing a key). Any existing attribute will be used for the characters drawn. Both will paint using the current attribute, and prompt for a character to paint with. The submenu has two selections; Normal and Lines. The Normal mode will only paint when the left mouse button is being held down. The Lines mode will 'paint' between any mouse button clicks, which allows you to create "straight" lines. The Normal and Lines modes both use a tweening function, meaning the program will not leave gaps if you move the mouse faster than the program can keep up. KEYS: Alt-P, RA-P (Normal), Alt-[, RA-[ (Lines) Flood Flood fill an area onscreen. The position of the cursor when this function is activated is important as this is where the 'flood' will begin. You will get a prompt similar to the Paint prompt (above). KEYS: Alt-V Normal This will turn off any of the modes listed above (except Block) and return to normal text editing. KEYS: Alt-O, RA-O or click where mode appears in the Status Window. Transparency This toggles the transparency mode on and off. When on the page, text in the Status window will change to Trns. Transparency allows you to 'see through' the current page to all pages behind it, creating a layering effect. You can perform any editing function on the current page, and text from other pages will remain unchanged. ANSI save offers a COMBINE mode, which will give you a single page ANSI file identical to what you see in the Transparency mode. KEYS: Alt-T, RA-T (toggle) or click on Page in the Status Window. Insert Toggles the Insert function on and off. While in the Insert mode the Status Window will display I to the left of the page number. When Insert is on, text to the left of the cursor position is shifted to the right as new characters are typed in. Text shifted off screen is lost. KEYS: Alt-I, RA-I (toggle) or click on I in the Status Window. Auto Indent The Auto Indent mode will move the cursor directly below the first character of the previous line when you press Return. This is mainly useful for editing pure text files. KEYS: Alt-Y, RA-Y (toggle) or click on the A in the Status Window. Edit Menu Attribute Attribute is used to determine what colors the various drawing functions of HyperANSI use. This function will open the Attribute selection window. Select the Foreground and Background colors by using the mouse and clicking directly on one of the colors, or by using the cursor keys. The left/right keys change the background color, and the up/down keys change the foreground color. Selecting the Okay gadget will return you to editing using the newly selected colors, selecting the Default gadget will use the program's default color settings of Grey on Black, and the Cancel gadget will return you to editing without changing colors. The current attribute always appears on the Status window in the Color text (next to the cursor position co-ordinates). KEYS: Alt-A, RA-A or click on Color in the Status Window. A faster method of changing colors is also available. Using the ALT key in conjunction with the cursor keys will change the colors as follows; ALT-Up: Foreground Color + 1, ALT-Down: Foreground Color - 1, ALT-Right: Background Color + 1, ALT-Left: Background Color - 1 Use ALT-/ to reset the attribute to grey on black (useful for macros). Function Keys The program allows you to enter characters by using the Function keys. It also allows you to change to different Character Sets with the current set being shown on the right side of the Status window. This menu option will open up the Function set window. Use the mouse and click on the set you wish to use, or use the cursor keys to change the current set. Use the Okay gadget to utilize the new function key set. Default will return to the set you were using before selecting this function, and the Cancel gadget will return to editing without changing the set. KEYS: Alt-F, RA-F or click on Set:## in the Status window. There are also two other methods of changing the Function key sets. The first uses the ALT key in conjunction with the function key numbered the same as the set you wish to use. To use SET:06, for example, you would press ALT - F6. The second method for changing sets is to click the mouse right on the function sets as displayed in the Status Window (not the Set:##, that will open the Set Requester). Clicking on the right side (right of 6= in the Set display) will use the next set, and clicking on the left side (left of 6= in the Set display) will use the previous set. Keymap Edit Edit Keymap, allows you to re-map the keyboard to use any character you choose. This function opens the Keymap Editor window, which displays EVERY character that HyperANSI is capable of using. To remap a key on the keyboard, simply press it (use SHIFT as well for SHIFTED key remapping) and the currently mapped character is highlighted. To change the mapping select the NEW character you wish to use, using either the mouse (point and click) or the cursor keys. Type in the next key you wish to remap or Select the Done gadget to exit. The program will now use the changes you made to the keymap KEYS: Alt-M, RA-M Some keys cannot be mapped (Function Keys, Ctrl, SHift, Alt Amiga, Return, Esc, Del, Help, Tab and Backspace). Keys which are normally not SHIFTABLE (like the keypad) can be defined. This remapping is only used for HyperANSI, all other programs will use whatever keymap your Amiga preferences are set to. However, HyperANSI will always use the internal keymap which is set to the Standard (USA) format. Load Load a keymap file. Save Save a keymap file. After configuring the keymap with the Edit command, you can save it for later use. If you save your keymap as S:HyperANSI.keymap, the program will automatically load and use this keymap every time you run HyperANSI. Status Window Toggles the Status window on and off. When off, you will have an unobstructed view of the current page. KEYS: Alt-BS, RA-W Load Parameters Sets the Display speed and real time display status. The Display speed is set by using the proportional gadget. You most likely will have little reason to use anything other than maximum display speed, but it is useful for slowing down animations and to extract graphics from a file which displays so quickly that hitting space at the right time is difficult. Display status is set using the gadget labeled DISPLAY. If this gadget appears indented then the display is off. The program will load and process the ANSI file and then update the display. If DISPLAY is on, then the program will update the file in real time as it processes the loaded file. You can press SPACE at any time a file is being displayed to bring up this requester again. It will have an additional gadget labeled Abort. If you press this the program will stop processing the file, but leave whatever has been processed so far intact. ANSI parameters Allows you to configure the ANSI files created by HyperANSI. You can select the following; Screen Preparation: Clear, Home and None. Inter-Page Preparation: Clear, Home, Transp(erancy) and none. Number of rows: 23 to 25 and "AUTO" The AUTO setting will only save as much of a page as you've used. This makes it much easier to quickly create BBS menu's. End Of Line Character: CR/LF, LF and CR. The EOL you use depends on what you intend to do with the ANSI file. If used on an Amiga then a LF is all you need, If used on an IBM then it must be a CR/LF. On a BBS you should check the BBS manual to see what you should use. ANSI code cursor advance: On and Off. Some BBS software strips out ANSI codes which would tend to 'bunch' the text together. Turn this option to OFF if this occurs to you (or users of your BBS) If you use 'On' then the ANSI text files will be alot smaller. Use: Exits the requester and uses whatever you've selected. Default: Resets the parameters using internal defaults. SavePref: Save the parameters to the same directory as the HyperANSI program (under OS 2.x) or to the S: directory (under OS 1.3). This file, called ANSI.prefs will be automatically loaded and used every time you run the program afterwards. ASCII parameters Allows you to configure the ASCII files created by HyperANSI. You can select the following; Character Set: Amiga or IBM. The Amiga character set causes the program to attempt to convert IBM characters to the equivalent Amiga characters or the best look-alike. End of Line character: CR/LF, LF and CR. (see above) Use: Same as above (in ANSI parameters) Default: Same as above (in ANSI parameters) SavePref: Same as above except it creates a file called ASCII.prefs. Page Menu Column Insert and Delete submenus. Insert will shift the entire page right one space from the current cursor position, and Delete will shift the entire page left to the current cursor position. The column on the far right will be pushed off-screen (and lost) when Inserting, and the column the cursor is on will be removed when Deleting. KEYS: CTRL-Right Cursor = Insert Column, CTRL-Left Cursor = Delete Column Row Insert and Delete submenus. Both operate exactly the same as the Column insert and delete functions. KEYS: CTRL-Down Cursor = Insert Row, CTRL-Up Cursor = Delete Row Clear This will clear the current page. It will set the attribute of the entire page to that of the current attribute settings. KEYS: Alt-C, RA-C Get Attribute Uses the attribute colors of the character beneath the current cursor position. KEYS: Alt-U, RA-U Next Page Moves to the next page. If you were on page three, this would change the page to four. The highest page you can move to is 999. KEYS: ALT-KEYPAD 8 (the up arrow), RA-2 (for those without a keypad). You can move without worrying about wasting memory on unused pages, since the program can see that the page is not in use, and will free the memory when you leave it. Prev Page Moves to the prev page. If you were on page three, this would change the page to two. The lowest page you can move to is 1. KEYS: ALT-KEYPAD 2 (the down arrow), RA-1 (for those without a keypad). Next Real Page A Real Page is a page which is currently in use. The program will free the memory used by any page which contains only spaces and a black background (ie not in use). Next Real Page moves to the next real page, skipping over any unused pages. For example, If you only had page 1 and page 123 in use, this function would immediately move you from page 1 to page 123. KEYS: ALT-KEYPAD 9 (the PgUp key), RA-4 (for those without a keypad) Prev Real Page Moves to the previous real page, skipping over any unused pages. For example, if you only had page 1 and page 123 in use, this function would immediately move you from page 123 to page 1. KEYS: ALT-KEYPAD 3 (the PgDn key), RA-3 (for those without a keypad) Goto Page Displays the Goto Page requester. Type the page you wish to move to in the string gadget. Blocking Options The blocking options are presented in the Status window in the line above the editing parameter display. The main blocking options are displayed after the block has been 'locked in' and are as follows; Copy will get a copy of the blocked area. You can use either the mouse or cursor keys to move this copy around. You will see a new prompt displaying the copy/move options. If you press S or the left mouse button the copy block will be stamped in full on top of any existing text. If you press O then the copied block will be Overlaid on any existing text. This overlay will not erase any text where the copied block has spaces with a black background. If you press U the copied block will be underlaid beneath any existing text. The underlay will appear through any existing spaces with a black background. Move is the same as copy, except the initial blocked area is erased. Fill allows you to fill a block completely with either a foreground color, background color, or a single character. The fill prompt allows you to specify how you want the block area to be filled. If you select attribute by pressing A then the existing text in the blocked area will change to the current foreground and background colors. If you choose Foreground by pressing F or Background by pressing K then the existing text will use the current foreground or background respectively. If you select Character by pressing C the program will prompt you to press a key to use to fill the entire block with while retaining all existing attributes. If you select Both by pressing B, you will also be prompted to press a key, which will fill the block completely using both that character and the current attribute. You can change the attribute at any time in the blocking process by using the keyboard options 'Alt-A' or Alt-[Cursor Keys]. Text offers many ways to manipulate text. The functions are; Box, Center, Right-Align, Left-Align, Shadow, Justify and Unjustify. The Box command, which is selected by pressing B, will create a box using the appropriate characters. The characters used depend on which Function key Set is in use. Function Set 1, will result in single line boxes, Set 2 is double lined boxes, and Sets 2 & 3 creates combination single/double lined boxes. The box is created over the outermost characters of the blocked area. Any text within the box is untouched. Next are three 'aligning' functions; Center, Right and Left-ALign, which simply shift the text horizontally. Shadow is useful for creating 3-D looking ANSI screens. It is best used on screens which have a background color other than black. After selecting Shadow you will be prompted to 'move shadow area' which is the really just the 'rubber band' area you created with the original blocking command. Use the mouse or cursor keys to move this shadow box around, and press the mouse button or hit enter to create the shadow. The shadowing is done on any part of the screen EXCEPT in the location of the original block. Justify allows you to smooth out the margins of paragraphs of text as it inserts spaces in the sentences to fill them out. All lines in the blocked area will be the same length. Use Unjustify to return the lines to one space between words. Delete removes all the text within the block, and causes all text to the right of the blocked area to be moved over to replace the deleted text. HyperANSI does not yet have an UNDO function (but will in the future) so be careful for now, you can't get back anything you delete by accident! Erase will wipe out all the text in the blocked area, clearing it by filling it with the space character and resetting the attribute to grey on black. Replace allows you to change the attribute (Foreground and/or Background colors), single characters or both. The location of the cursor BEFORE you started the block is important, as this is the character/color that will be changed. Flip is primarily useful for graphic ansi screens. The flip options are; AXIS: X Y Both MIRROR: 1=X 2=Y 3=BOTH This offers you two methods of flipping your ANSI. The first three options flip the text either in the X direction (horizontal), the Y direction (vertical) or in both directions. Characters remain exactly the same. The MIRROR options use a remapping routine, which will use the mirror image of any character, if it has one. To see the difference (it's hard to explain) try the following; use Block-Text-Box to create a box. Now try flipping it in both directions by pressing B. You will see that it no longer looks like a box. Now try the whole thing over again but this time use the Mirror Both option (press 3). The box now remains intact (it might look like nothing happened, but try adding a couple lines of text in the box). This mirroring is done for EVERY character which has a 'mirror image' character, not just the line drawing characters. Other Stuff Status Window The Status window shows you the current editing parameters, and its format is; (01,01) Color Text I A Page:001 Set:01 1= 2= 3= 4= 5= 6= 7= 8= (01,01) shows the current cursor position -- the x position (1-80) and the y position (1-25). Color shows the current editing colors. The foreground color is used by the actual text, and the background color is the color appearing behind the text. If you click the mouse directly on this area, the Color requester window will appear. Text shows the current editing mode. The available modes are; Text - normal text entry Draw - Line drawing Paint - Painting PainL - Painting with the tweening on Half - Half character painting HalfL - Half character painting with tweening on Block - In the process of Blocking If you click on this area, the mode will be reset to Text. I shows whether the Insert mode is active. If you cannot see it, then the Insert mode is off. If you click in this area, the Insert mode will toggle on and off. A shows whether the Auto-Indent mode is active. If you cannot see it, then Auto-Indent mode is off. If you click in this area, the Auto-Indent mode will toggle on and off. Page:001 shows the current page, and indicates whether the Transparency mode is on (or off). If the Transparency mode was active then the text would change to Trns:001. If you click on the Page (or Trns) text, the Transparency mode will turn on (or off). If you click on the numbers (ie 001), the Goto Page requester will open. Set:001 shows the current function key set (seen to the left in the status line). There are a total of 10 different sets which you can use. If you click on this text, the Function Key set requester will open. The remaining text is the current function key set. Pressing any of the ten function keys (at the top of the keyboard) will print the character displayed here. If you click on the left half, the Function Set will change to the previous set, and if you click on the right half, the Function Set will change to the next set. When you are recording a Macro, an R will appear to the left of 'Page.' This indicates that everything that you are doing is being recorded. The Status window is also used for prompting when a function requires additional parameters. Not mentioned in previous versions (but it was still enabled) is that you can hold down the shift-key in conjunction with the cursor keys to move the cursor from word to word. Definitions Attribute = the current editing color (synonymous with Color) Color = the current editing attribute (synonymous with Attribute) Tween = Connecting space between two non-adjacent positions HyperANSI, beyond 1.0 What do I have planned for future versions? I do plan on implementing some of my ideas (below), but if you have an good idea please send it in to me. This is a short list of some planned features; Arexx macros - play, record, save and load. Mail Reader support - allow limited line lengths, to email ansi text Fonts - easily create large ansi characters plus many more... Feel free to email me your ideas and comments at the following addresses; GENIE : M.NELSON34 INTERNET: M.NELSON34@GENIE.GEIS.COM FIDO : 1:246/44.0 (Mike Nelson) AmigaNet: 40:550/44 The latest shareware version of HyperANSI may be found at: Transference BBS - (519) 383-1057 USR HST/DS It is also FREQable as HYPERANSI. My Support BBS - (519) 542-6788 (V.32) First time callers can download (as much as they'd like) Registering If you find HyperANSI useful, then please send in a donation. Print the file REGISTER.TXT, fill it out and mail it to me. The registration fee is up to you, send whatever you feel the program is worth to you. The important thing is to SUPPORT SHAREWARE and ensure the continued development of this program. Those who send at least $25US ($30 CAN) will receive the following: A disk containing the latest release of HyperANSI, and three archive files, which will unpack to THREE full disks worth of ANSI screens (plus some animations) for a total of over 500 ANSI files. A printed manual. Limited quantities exist, the longer you wait to register the less likely that will any exist to be mailed. If you are registering after January 1 1994, and _really_ want a printed manual, please say so on the registration form. Thanks to Jeff Grimmett for editing this manual and putting the folds in for TurboText users!