Text Draw

by Chris Daniel


Issue 9

May/Jun 84

Next Article >>

<< Prev Article



Text Draw allows you to design a screen in any of the text modes (including antic 4 and 5) and save it to cassette or disk. The screen can then be loaded for further editing or display. Disk users could easily save several screens to be used as part of a graphic adventure. The program is quite easy to use and the various options and notes on use follow.

CHARACTER SET: You may load in a redefined character set at the start of the program. It must be a full set (i.e. 1024 bytes long) and must be stored as a data file. Most character generators will allow you to create a file of this sort. Instedit (APX), Graphic Composer (Datasoft) and Superfont (Compute magazine) certainly do.

DRAWING: Plug a joystick into port one. Select a character from the keyboard, move the flashing cursor to where you want to place the character and press the joystick button. Any character may be selected and used, even ESC, CLEAR, INSERT etc. and the cursor control characters. The only keys to avoid pressing are BREAK (you'll have to restart) and CTRL 1 (press again to continue). The '+' sign is used as the cursor. You can still redefine it and draw with it although you will have a different looking cursor. If you travel off the screen when drawing or moving the cursor, you will reappear on the opposite side. To erase characters press the space bar and draw over them. Whilst in the draw mode the ASC and internal character codes are shown in the text window. ASC is the code the Atari uses normally for character work in BASIC, however when you POKE (or PEEK) the screen it uses a different internal code. If you POKE ASC characters to the screen you will not get the results you expect Suppose, for example, you wanted to get the letter A from the keyboard and POKE it to the screen. The keyboard will return a value of 65 but if you POKE this to the screen you will get a CTRL A displayed.

To allow the maximum choice of characters you can redefine and use, all options have been placed on the console keys. Unfortunately as there are only three keys and I needed four options you have to press SELECT and OPTION at the same time for the fourth choice. This is possible, it just requires a bit of practice.

OPTION: Toggles between the Atari character set and your own set If you have redefined the upper case characters you'll have to use this to read any messages in the text window.

SELECT: Allows you to alter the colours. POKE commands are used for the colours as opposed to SETCOLOR. Be careful not to set 710 (background of text window) and 709 (text) to the same brightness as your text will disappear. To exit press return.

START: Sends you to a sub-menu with the following options:

E - Erases the screen.

S - Saves the screen.

L - Loads a screen.

R - Restarts from the beginning.

When loading a screen it is safest to be in the graphics mode the screen was saved in (graphics 0 and 4 are compatible) otherwise you may get strange results or even crash the program. If you want to use the screens in your own programs it is not too difficult to adapt the I/O routine at lines 10, 765 to 810 and 1000. This routine also saves the display list and tries to set it up when you load a screen. To load an Antic 4 or 5 screen you do not need to provide a modified display list, just the right amount of memory. For Antic 4, use Graphics 0 and use Graphics 1 for Antic 5. The routine saves the character codes, not the actual pixels, so you will have to load your redefined character set, if you've used one, to display your screens correctly.

NOTE: The routine saves the whole screen including the text window and it should be noted that a picture can only be loaded with the same size memory used to save it A picture created on a 16 K system cannot be used on a 48K system and vice versa.

OPTION/SELECT: Graphics 1 and 2 only display half a character set at one time (the other half and inverse is used for colour information). This option is to enable you to choose either half of the set and will only function in these modes.

All options except SELECT (allowing you to change more than one colour) exit on their own. If ERRORS: Most errors (I hope all) are trapped but there is no way to check whether a cassette save has worked correctly. Because of the machine code load routine the computer will not detect a faulty cassette load, however the program should not stop and you shouldn't lose any display. Try again.

DISK: When prompted for filenames there is no need to use quotes or the device code, e.g. type MYPIC as opposed to 'D: MYPIC'.

Chris Daniel runs CS. Software and has successfully used this type of program to create screens for graphic adventures such as THE SEARCH and others.

AtariLister - requires Java