IMPORTANT!!! READ ON!! --------------------- <> After spending 1 1/2 Years in development I have decided to turn the "Electric Easel" Shareware!! A lot of software developers are turning to this way of selling their products because of the sky rocketing price of advertising and packaging. What is SharWare? Basically it is based on the honor system. We allow you to use our product and if you like it send us a small donation to help cover some of our costs. You may ask, "How does this benefit us??". First you get to see the product before you shell out one penny. Second if you send us a donation we will send you the "Graphing Package, Slide Show and the FONT GENERATOR". Third you can send us what you can afford. No donation will be refused. And fourth you will help yourselves by allowing us to continue programming for you and supporting your CPM machines. PLEASE don't say to yourself, "I'll let someone else send the money they'll never notice the difference". Need I say this is not true. We need all of your support as much as you need us. DONATION -------- We feel a donation of $20.00 is very reasonable. But please if you can't afford that much send us what you can. If you send less than $20.00 and still want the "GRAPHIC PACKAGE, ELECTRIC SLIDE SHOW, FONT GENERATOR plus DEMO FILES", please send us 3 disks and your donation. The above programs are NOT SHAREWARE and please do not distribute them. Also if your copy of the "ELECTRIC EASEL" is not complete we can send you a complete copy with all of the support files. ELECTRIC EASEL FILES YOU MUST HAVE Executive EASEL.COM -> Main Module E1.OVR THRU E30.OVR -> OVERLAYS for Electric Easel APRINT.OVR -> Advanced Printing Overlay TERMDEF -> Configuration file EASEL.HLP -> Help File TEST.MAC -> A sample alphabet MACRO. LOGO -> The logo Character Sets --------------- OS6X10.CHR OS6X12.CHR OS6X16.CHR OS8X10.CHR OS8X16.CHR BBY8X10.CHR BLD8X10.CHR --------------- documentation --------------- EASEL.DOC OSBORNE I OEASEL.COM -> Main Module E1.OVR THRU E30.OVR -> OVERLAYS for Electric Easel APRINT.OVR -> Advanced Printing Overlay TERMDEF -> Configuration file EASEL.HLP -> Help File TEST.MAC -> A sample alphabet MACRO. LOGO -> The logo Character Sets --------------- OS6X10.CHR OS6X12.CHR OS6X16.CHR OS8X10.CHR OS8X16.CHR BBY8X10.CHR BLD8X10.CHR --------------- Documentation --------------- EASEL.DOC KAYPRO 2x/4 '84 KEASEL.COM -> Main Program KEASEL.HLP -> Help file KAYEASEL.DOC -> Documentation printer.dat -> Printer configuration. Character sets --------------- KAY16.chr KAY12.chr Fancy10.chr psch20.chr baby10.chr --------------- DEMO PICTURES computer.pic Easel.pic License Agreement ----------------------- 1. We ask you to distribute this product (ELECTRIC EASEL) to any one you wish. 2. You may not sell this product to anyone!! If someone does sell this to you please send me their names. The only exception to the above is for non-profit clubs and the charge cannot exceed $5.00 unless special permission is granted by THAT SOFTWARE CO. We also reserve the right to restrict the distribution of this product by anyone we feel is abusing the above conditions. 3. EASEL GRAPH, ELECTRIC SLIDE SHOW, and FONTGEN are not sharware and are given for incentives to donate for the uses of the ELECTRIC EASEL. 4. This package must be distributed in full with the documentation and License Agreement. ---------------------------------------- SEND TO: RASHAMA JOHNSON 1030 Palm Terrace Pasadena , Ca. 91104 Thank YOU and GOOD GRAPHICS!!! Table Of Contents ================================ For Quick Starters ......................................... 3 Introduction .............................................. 4 Installation Getting Started ............................................ 6 Electric Easel Introduction ................................ 8 STATUS COMMANDS............................................. 9 Return to Main Menu.................................... 9 Display Graphic Characters............................. 9 Set Attributes......................................... 9 Display Block Commands................................. 10 Help................................................... 10 Set Alpha Mode......................................... 10 Turn on Status Line.................................... 10 Set Auto Repeat........................................ 10 Switch To Alternate Screen............................. 11 Clear Alternate Screen................................. 11 Put Main Screen to the Alternate Screen................ 11 Reprogram Graphic Keys................................. 11 Toggle printer to single density mode.................. 11 Set Free Drawing Mode.................................. 11 BLOCK COMMANDS.............................................. 12 Set Your Block Markers................................. 12 Print Blocked Area..................................... 12 Cancel printing........................................ 12 Fill Blocked Area...................................... 12 Delete Blocked Area.................................... 12 Draw A Border.......................................... 12 Move A Blocked Area.................................... 13 Copy a Blocked Area.................................... 13 Move Up a Blocked Area................................. 13 Move Down a Blocked Area............................... 13 Move Left a Blocked Area............................... 13 Move Right a Blocked Area.............................. 13 Center a Blocked Area.................................. 13 Draw an outline........................................ 13 Move a Block from the Alternate to the Main screen..... 14 Plot a Line in the 160 X 100 mode...................... 14 Plot a line in the 80 x 24 mode........................ 14 Draw a Circle.......................................... 14 Change all attribute inside a blocked area............. 14 Set Your Left Printer Margin (To Center a Picture)..... 14 NON - BLOCKED COMMANDS...................................... 15 Cursor commands........................................ 15 Draw a row starting at your present cursor position..... 16 Draw a column starting at your present cursor position.. 16 Set Auto Repeat........................................ 16 Line feed............................................... 16 Erase entire screen.................................... 16 Redraw entire screen................................... 16 SAVE A FILE MENU............................................ 17 Save in Picture format................................. 17 READ FILE MENU.............................................. 18 Graphics Editor........................................ 18 Read Alternate Picture File............................ 19 Cut and Paste ......................................... 19 Easel Tutorial ........................................ 20 Programmers Info ...................................... 28 Easel Graph ................................................ 28 File Formatting ........................................ 30 Display Horizontal Graph .............................. 31 Bar Chart Information ................................. 32 Hints ................................................. 35 Set Scale ............................................. 36 Edit Data ............................................. 37 Begin Graphing ........................................ 39 How To Create A Format File ........................... 40 Data Files With Supercalc ............................. 41 Data Files With Dbase ................................. 42 Mbasic -- 'C' Language Support ........................ 42 Electric Slide Show Introduction ........................... 43 Instruction Summary ................................... 45 WAIT - IF - ENDIF - ELSE .............................. 45 TEXT - PRINT - RETURN - BEEP - REPEAT - PAUSE - LOAD... 46 CLEAR -DCROLL- SCROLL - BOARD.......................... 47 LOAD "filename.pic".................................... 51 ATTRIBUTES............................................. 50 Tutorial .............................................. 52 Error Messages ........................................ 56 Font Generator ............................................. 57 Overview .............................................. 57 Cursor Controls ....................................... 58 Commands .............................................. 58 Save Character Sets ................................... 60 FOR QUICK STARTERS If you can't wait to get stared and won't bother to read the documentation then this may help you to get started. FILENAMES KEASEL KEASEL is the name of the Electric Easel graphics screen editor. TO LOAD WITHOUT A PICTURE: A>KEASEL TO LOAD WITH A PICTURE: A>KEASEL Filename.Pic KGRAPH KGRAPH is the name of the Easel Graph program!! TO LOAD: A>KGRAPH KSLIDE KSLIDE is the ELECTRIC SLIDE SHOW TO LOAD without a CMD file: A>KSLIDE TO LOAD with a CMD file: A>KSLIDE demo.cmd FONTGEN FONTGEN is the character editor. TO LOAD: A>FONTGEN CHARACTER SETS KAY12.CHR KAY16.CHR BABY10.CHR PSCH10.CHR Electric Easel The Complete Graphics Package The "Electric Easel" is a complete graphics package. It is made up of four separate packages that are fully integrated with each other. Electric Easel is a full graphics screen editor, a full comprehensive graphing package, an electric slide show, and a character editor for creating your own character sets. The Graphics Editor is a full global screen editor with full block, plotting, and cursor commands. It's easy to move a piece of your picture to any where on the screen you wish with just a couple of commands . You can duplicate any section of the screen anywhere on your present screen with just a single command. If you wish to draw a circle that's a breeze, just two keystrokes will do it. The same applies to plotting a line between any two points. Electric Easel has two screens, one for drawing and one for storing picture libraries for fast creation of graphic pictures. You can send your picture to any Epson,Gemini,or Nec 8023A dot matrix printer. We feel and so do many of our customers that the "Electric Easel" is the finest and easiest to use graphics editor available for the Osborne,Executive,Kaypro 2x/4/10 computers and a special expanded version soon to be available for the IBM PC/XT/jr.. Easel Graph is a plotting package that creates horizontal, vertical, line, and exploding pie charts. These graphs can be created by either hand entered data in Easel Graph's own editor or you may use data that is entered as a file from Supercalc, Dbase II files, Wordstar files, Basic , Assembly language or any other way which creates a column of numeric data. It will read the data in either floating point or in exponential format. This graphing package features file formatting which creates the look of the graph, file editing, auto or manual scaling, system utilities and a means of saving the graph in a picture format that is compatible with Electric Easel's screen editor and the Electric Slide Show. It features 7 digits of precision to the right in floating point format with a capability of E+40 or E-40 in exponential format. The Electric Slide Show is a program that can create a slide show using computer generated pictures which can be created by Electric Easel or Easel Graph. This program comes with an interpreter to program the special effects for each of the computer generated slides. Electric Slide Show can also accept single key input and has the logic to act upon it. You can also load any .com file and then return to your slide show after exiting from your program. With these capabilities you can create menus, business presentations, or use it for commercial advertising or educational purposes. The Font Generator allows you to create your own character sets. These character sets are used while printing your picture when in the Electric Easel screen editor. This editor will allow you to load or save character sets. We have furnished you with five character sets to get you started, but I'm sure you will have fun creating your own. Electric Easel & Easel Graph & Electric Slide Show and Font Generator Copyrighted (c) in 1983 by That Software Co. That Software Co. 1030 Palm Terrace Pasadena Ca. 91104 HOW TO START Electric Easel comes on Kaypro formatted non-sysgened diskettes. Before you do anything make backup copies and store your MASTER diskettes! Before you use the Easel packages, you should perform the following steps: 1. Format a blank, double density diskette by using the COPY program supplied with your Kaypro 4 or if your copy program will copy the program then just follow your copy program instructions and skip by all of this else place your diskette in drive B:. 2. Insert your CP/M system diskette in drive A, and start PIP by typing its name. Place your master diskette (the one you received from us) in drive A. When the asterisk appears type: B:=A:*.*[v] then press ' RETURN ' 3. Use Sysgen and Setup as described in the Kaypro Manual. Printer Setup Your Easel Packages are set to work with the Nec pc-8023, Apple Dot MAtrix, C.Itoh dot matrix or any Epson Compatible printer that is graphtrax or graphtrax plus compatible. That includes most Epson Mx80's all Rx80's and Fx80's, Gemini 10x and 15x's. We will be releasing Okidata, IDS Microprism, Diablo at a later date. To select which printer do the following: Load Wordstar A>WS Enter the Non Document Mode. Press 'N' Enter the Filename. "printer.dat" '0' in it for the Nec8023-Apple Dot MAtrix-C.ITOH, a '1' for the Epson RX/MX/FX- Gemini 15x - Riteman - Citizen or a '2' for a GEMINI 10. To Save this file press: CTRL KD And that's it!!! You're ready to go!! ================================================================ The Electric Easel Introduction The "Electric Easel" gives you the ability to draw an image to your video screen and reproduce it on your printer. With Electric Easel you can create, edit and save these images to disk and/or to your printer. Electric Easel, here after known as E.E., uses the full capabilities of your machine. Full attributes are supported such as dim, inverse, underline, blinking or any combination of the four. E.E. gives you the capability to create your own character sets and send them to your printer, this includes all graphic characters. This is done with a font editor program included with this program. E.E. is a full global screen editor with full block instructions, line plotting, circle drawing, printer margin setting etc. As an introduction the best thing to say is," E.E. is one of the most powerful graphics screen editors of its kind anywhere on any Osborne and Kaypro machine. Please don't skip through too quickly!! Make sure you make a backup diskette and stash your master diskette away somewhere before you do anything else. We also implore you to make backup copies for your own use and please don't give copies to your friends. If your friends want to try out a copy of the program have them call us and we will send out a demo copy that is fully complete except that you won't be able to save your pictures and charts to disk. Overview This is a quick summary of E.E. and its commands. E.E. is divided into three main types of commands; STATUS,BLOCK and NON-BLOCK commands. Abbreviations = Return Key. ^ = Control Key. Status Commands Status commands display or change the status of "E.E.". All of the commands are toggles. This means that if the function is then it is toggled to and visa versa. Return CTRL Q Returns you back to the Main menu . Your screen is unaffected by the return to the Main menu. Display Graphic Characters CTRL F Displays the Main Graphic Set characters and the keys assigned to them. Set Attributes CTRL Z Sets the character Attributes. By pressing any key from A to Q you set the attributes for all characters typed or displayed to the screen until another attribute is selected. Display Block Commands ESC Displays the Block controls. This commands only works if both block markers have been set, otherwise it will ignore the command. Help This will display the help file. The "easel.hlp" file must be on the default drive. This command is only activated in the graphics mode. Set Mode CTRL G Toggles GRAPHICS MODE to Alpha numerics. When we first enter Electric Easel the Graphics Mode is set to ON. When we press any key from A to ` we will get a graphic character displayed to the screen. If we toggle to the ALPHA MODE any key we press will be an Alphanumeric character. Status Line CTRL K Displays the Status line. The status line is a graphic overlay that will be displayed at the bottom of your screen giving you the status of the current cursor position, character code at the current cursor position, the attribute mode we are now set at, the active files and wether the auto character repeat is on. Set Auto Repeat CTRL W Set Auto Repeat. This will allow you to hold down any key and continue drawing without having to press the key down repeatedly. Reprogram Graphic Keys CTRL Y This command sends you to the reprogram key menu. Before you will be a display of 255 characters that are allowed to you by the Kaypro's character rom mixed with the inversing of the normal 127 characters creating 255 individual characters. With this routine you can reprogram keys A-Z to a corresponding graphic character of your choice. Switch Screens CTRL O Switch Screen Page. Electric Easel has two screens. The ALTERNATE is kind of a catch all scratch pad screen. It is used by Electric Easel for many of its block functions. But if you wish to store a picture or a library of graphic symbols in it you may as long as you don't do any block functions for these will destroy you pictures. Alternate Clear CTRL V Erase Page Two Screen. This will clear your ALTERNATE screen of all character and all attributes. Move Screen CTRL I Move Screen Page One --> Screen Page Two. This will send the entire MAIN screen to the ALTERNATE screen erasing anything that was on the ALTERNATE screen. Set Printer CTRL H Toggle Graphics on the Epson(Gemini) to 960 - 480. When Electric Easel sends its output to the printer it defaults to 960 dots per line. But if you toggle this you may send it in an expanded form of 480 dots per line. This only allows you to send 60 of data columns all other characters will be truncated. Free Drawing CTRL P Turns on the 160 X 99 point graphics mode. Press any key and it will turn on a point. This is a free drawing mode that allows you to draw by pressing any key except your cursor commands. Block Commands Block commands are the real power in a graphics editor. They allow you to do mass movement of graphic or alphanumeric characters on the screen, printer or disk drives. Set Marker CTRL J Set the block markers. This will display a grid like character which will be one of two markers. This blocked off area will be operated on by one of the other block commands. Without blocking off an area first your block commands won't work. Print Block CTRL A Send the blocked section to the printer. This will take what ever section that is blocked off and send it to your printer. Make sure you have a character set loaded or it will not except the command and you will have to return to the Main menu and load a character set. Make sure you have set your left margin if you wish to center your picture before you print your picture. Cancel Printing CTRL U Cancel sending the picture to the printer. Fill Block CTRL F Fill the blocked section with the character and attribute of the second blocked marker. First you block off an area with the CTRL J command then put what character you wish to fill the block with on the same square as the second marker. It will then proceed to fill the block will that character and attribute. Delete Block CTRL D Delete all of the blocked characters. This actually replaces all of the characters within the blocked area with spaces and turns all of the attributes to normal. Draw Border CTRL B Draw a border. To draw a border or a box simply block off your box then put the character you wish to draw a border with in the second block marker and presto a border. Move Block CTRL M Move the blocked characters to the current cursor position. Just block out an area you wish to move your cursor to the new area then press CTRL M. Copy CTRL C Copy the blocked characters to the current cursor position. Move Up CTRL U Move the blocked area up one cursor position. Move Down CTRL V Move the blocked area down one cursor position. Move Left CTRL L Move the blocked area left one cursor position. Move Right CTRL R Move the blocked area right one cursor position. Center Block CTRL S Center the blocked area. This command will automatically center a blocked area on the X axis wiping out anything in its path. Draw an Outline CTRL J CTRL J CTRL J This will draw a thin graphic line around your block area. Block off the area then PRESS CTRL J. Alternate Copy CTRL K Copy blocked memory from ALTERNATE screen to the MAIN screen. To copy a piece of a picture from the ALTERNATE screen to the MAIN screen is an easy task. Just press a CTRL O this will put you into the ALTERNATE screen. Block off any area to copy to the MAIN screen. Press ESC then a CTRL K, this will make Electric Easel copy the contents of the blocked area on the ALTERNATE screen to the current cursor position on the MAIN screen. High Plot CTRL E Plot between the blocked markers -- High density 160 X 99. In this mode we can plot using the KAYPRO'S highest screen resolution possible. Low Plot CTRL X Plot between the blocked markers -- Low density 80 X 24 points. This command operates similar to the CTRL E but plots using the character and attribute that is beneath the second blocked marker. Draw Circle CTRL Z Draw a circle using the first marker as the CENTER and the SECOND marker as the radius of the circle. If the circle is greater than the screen size the circle will be truncated at the screen limits. Change Attributes CTRL H Change all of the marked attributes to the attribute of the second blocked corner. Set Printer Margin CTRL G Set the printers left margin using the cursor's 'X' position as the left margin. The advantage of this command becomes apparent when you need to center your picture on the paper. For instance by moving your cursor to an X position of 17 then pressing ESC CTRL G your picture will be centered on the page when it is printed. Non Blocked Commands Cursor Controls in the Graphics Mode Right = Right arrow or '6' Left = Left arrow or '4' Up = Up arrow or '8' Down = Down arrow or '2' Right & Up = '9' Left & Up = '7' Right & Down = '3' Left & Down = '1' Top Screen = CTRL T Bottom Screen = CTRL B Far & Left = CTRL A Far & Right = CTRL L Non Cursor Commands ---------------------------------------- Draw Row CTRL R Draw a horizontal line from the current cursor position to the end of screen. This line will be drawn with the character that is in the current cursor position. Draw Column CTRL C Draw a vertical line from the current cursor position to the end of the screen. The line will be drawn with the character that is in the current cursor position. Set Auto Repeat CTRL W Allow auto increment of cursor in the graphics mode. Line feed Line feed the cursor to the next line. Erase Screen CTRL N Erase the picture. Make sure your caps lock is off!! Redraw Screen CTRL U Redraw the screen. You have just been given a summary of E.E.'s global editor commands. The Main Menu Save a File Read a file Graphic Editor Exit Cpm Read in Main Character set Read in Alternate Picture File Read Cut and Paste File Set to Normal Characters 8 x 12 dots Press ESC to make your Selection To access any of the Menu selections use the up and down arrow keys. The first thing you will notice is the titles will be highlighted. When you have found the selection that you want press the ESC key. This will execute that selection or take you to another menu with other options. We will start with the first selection and proceed from there. Save a File -------------- Save Menu Store in Picture Format Return Picture Format This is the standard picture format that "Electric Easel" and "Electric Slide Show" use. E.E. has the capability to save just a portion of the picture. In order to save a picture you must first block the corners,[CTRL X], of the picture you wish to save. This will save just that part of the picture that is inside the block characters. This program will show you the size of the block area: X = 0 Y = 0 X2 = 79 Y2 = 23 The above is an example of saving a whole picture. '0' is the first position of the screen and '79' is the farthest Column position. '23' is the farthest 'Y' position. The program will query you if you wish to save or not save that block. If you say no then it will return you back to the menu. You can then go back to the graphics editor and change the block markers and then repeat this process. Return This will return you to the Main menu. READ IN A PICTURE FILE This will prompt you for a file input. If the file is not found it will complain. If you are successful the [ACTIVE] sign will be displayed at the right of the menu. And your picture will be loaded. Graphics Editor What we have is a blank screen that will allow you to use the graphics capability of your machine and send what you have created to your printer. We will discuss the commands and their uses later in the documentation. Exit to Cpm This returns you to your main operating system. Make sure you save your picture or it will be lost. READ IN MAIN CHARACTER SET Before you can send any output to the printer you must first load your character sets. The real strength of this program is that it allows you to use character sets that you create. We furnish you with several different character sets but we feel that you may wish to create your own. For this we furnish you with a character generator program which has it's own separate documentation. What this means is that anything you can create on the screen you can send to the printer including any of the character sets displayed by your computer. If you forget to read the character set in, nothing will happen when you try to print so don't worry if you accidentally forget. READ IN A ALTERNATE PICTURE FILE This is one of the more important features of the "Electric Easel". With this feature you read in a picture file of your choice into an ALTERNATE VIDEO area. You may view this area by pressing CTRL O. By using the BLOCK markers you can block off an area then press CTRL O to return to your regular VIDEO screen. By positioning the cursor to the place in which you wish to copy the graphic shape and then by pressing an ESC CTRL K you will copy that blocked memory shape from the Alternate video to the Regular video. READ CUT AND PASTE FILE Before you do anything else go to the "Graphics Editor" and make sure the cursor is where you wish the picture to start. This allows you to read and save like a "Cut and Paste" option in word processors. The file will also check for the block size and display this size. If the picture is to big starting from your cursor position then the program will truncate the picture. Set to Normal Characters 8 x 12 dots This is another of the unusual features of this program. Normally your standard screen character size is 8 X 12. With the use of the character generator you can create character sets of a 8 X 16 grid. This will not be echoed to your screen but only to your printer. The advantage of the increase in character size is the increase of your picture size. This is about a %25 increase in size. The disadvantage is the picture will have elongated look. The default size is the 8 X 12. If for instance you have chosen the wrong size there will be added space between the graphics characters and it will looked striped or overlapped.. This ends the summary of commands and the overview of the Menu functions. Easel Tutorial We will now use the graphics editor's commands and learn some tricks of the editor. * TO LOAD ELECTRIC EASEL * To START KEasel or Easel filename.pic This will load your graphics editor and the picture file if you wish to use it. Read in character set Input filename: a:kay12.chr This will load your main character set. Graphic Editor Status Line This will load the graphic editor with the status line showing below. EX: Key = [*] Char Code = [32] X = [0] Y = [0] Mode = [Graphics] Attrib = [Normal] Main = [a:osbon10.eee] [Alt = a:bold10.eee] Pic = [None] Repeat = [Off] [Cursor Controls & Status Line] If the cursor is not on a graphics character, "KEY" will always equal "*". If it is on a graphics character it will display the key that will activate that graphic character. An example would be of a solid graphic block would = "W". " X and Y" are the cursor coordinates. "Mode" is what the keys are set to. For instance there is a definite difference in the way the keys act in the "Graphics" mode than when in the "Alpha" mode. In the "Graphics" mode all of the upper case letters equal a graphics character. If you refer to APPENDIX A this will show you which graphic character is linked to what alpha key. Also in the "Graphics" mode the numbers, '0' - '9' are treated as cursor controls. "Main" is the name of the main character set. "Alt" is the name of the alternate character set. "Pic" is the name of the picture file. "Repeat" is the status of the cursor activity. This is what the cursor does on pressing of a key. If the "Repeat" is off then the cursor will not advance to the next position when the key is pressed. If it is "On" the cursor will advance to the next position. To Turn Status Line OFF CTRL K CTRL K This will give you a clear screen. If you need to later check your status again the just press CTRL K your status line will return. This line only overlays on top of your picture and does not alter it in anyway. USING CURSOR CONTROLS Now lets try using our cursor controls to get us around on the screen. By pressing the arrow keys in all directions you will notice that a little white block moves all around the screen. Don't worry about writing over any areas that already have drawings on them, for the cursor does not alter the picture, but only positions it for a write to the screen. If you've got that under control lets try some of the more powerful cursor commands! Move your hand over to the numeric key pad to your right. [UP] [UP & LEFT] 7 8 9 [UP & RIGHT] [LEFT] 4 6 [RIGHT] [DOWN & LEFT] 1 2 3 [DOWN & RIGHT] [DOWN] Try the different cursor commands . The numeric key pad is only active as a cursor control pad while you are in the "Graphics" mode. Otherwise it will just print the numeric value while in the "Alpha" mode. We still have a few more cursor control commands left. TOP = CTRL T BOTTOM = CTRL B FAR LEFT = CTRL A FAR RIGHT = CTRL L. NON BLOCK COMMANDS Now that we have the cursor commands mastered let us continue on to the "NON BLOCK" commands. We are going to draw a border around our screen. First make sure your CAPS LOCK is ON. The graphic character keys need to be all CAPS. Now HOME your cursor to the upper left hand corner. PRESS the 'W' key. This will put a solid white block in that corner. Draw a Row PRESS CTRL R What happened? There should appear a line drawn horizontally across your screen that is made up of white blocks. Draw a Column PRESS CTRL C. Again you should see a line being drawn but this time it should be a vertical line. Draw a box PRESS CTRL B This brings our cursor to the bottom left hand corner. The cursor should now be at the bottom and far left corner of the screen. Draw a Row PRESS CTRL R We now have another horizontal line at the bottom of the screen. Lets go to the upper right hand corner with the cursor. PRESS CTRL T then CTRL L This will take us to the top and then to the end of the screen. Draw a Column PRESS CTRL C You should have a complete border around your screen. If we analyze what we have just done we should get some of the insight to the commands we have just used and this will allow us to use our tools more effectively. The line drawing commands only work from the point of the cursor to the end of the screen. They will only draw the character and attribute that the cursor is upon. For instance if we wished to erase a line we could easily do so by pressing the space bar and then pressing CTRL R it will replace all characters preceding it with spaces. The same applies to the CTRL C. BLOCK COMMANDS Lets now draw the same border using block commands. These are the real power of this graphics editor. Let us first erase the screen. Erase Screen PRESS CTRL N It will then query you about erasing the screen, answer yes. If nothing happened don't worry it is a little safe guard that I decided to put in after many unintentional erases. You must be in lower case in order to erase. It may bother you once in awhile but it will save that one picture that you didn't mean to erase. Anyway try it in lower case and it should disappear. Block Characters - Draw Rectangle ...[CTRL J--CTRL B]... Block commands center around the single most important command. The actual blocking off of the picture or screen area. Well lets get started and draw us a border. First home your cursor to the upper left corner of the screen. Set Marker PRESS CTRL J You will notice a dimmed grid like block character. This is your first block. Next bring your cursor to the bottom right hand corner. Press another CTRL J. The same block should appear. PRESS 'W' This puts that character in the block command structure which I will elaborated on later. Show Block Commands PRESS ESC This will bring up the block commands. Draw Border PRESS CTRL B Presto chango, a border!!! CTRL B equals a command called box. It will create a border around any area blocked in by the two blocks. The character that is to be displayed around the border is taken from the character and attribute that is under the second block. We must also stress that when you do use the block markers make sure that the first marker is always above and to the left of the second marker or even with it. If you put the markers in any other order they will not work, unless you are using the plot functions, ESC CTRL E or ESC CTRL X. DRAW OUTLINE ESC CTRL J Block off the corners of the object you wish to outline using the CTRL J markers (Don't get confused this is ESC CTRL J). then press ESC CTRL J to draw the outline. Delete Block CTRL D Press a CTRL D to erase our handy work. Make sure you switch to lowercase to do this or you'll just be wasting your time. FILL BLOCK CTRL F Next we shall use the "FILL" command. This allows us to fill up a block area with any character and attribute. All you have to do is move the cursor to the farthest upper left hand corner of your specified block and press a CTRL X. Then move your cursor to the farthest lower right hand corner and press CTRL X. We have now blocked out the area we wish to fill. Now find a character "Alpha" or "Graphic" that you wish to fill the blocked area with. When you figure which character you wish to fill the block with make sure the cursor is over the second blocked marker, the one to the lower right and press the character key. Now press ESC and CTRL F the block should fill up with that character. If for some reason it didn't work please read back over and follow every instruction exactly. Move Block [..Left - Right - Center - Up - Down..] ...[CTRL L -- CTRL R -- CTRL S -- CTRL U -- CTRL V]... We shall now move our block around the screen a little . Center Block CTRL S The first command is the CTRL S the center command. This will center the X axis of the block. Press CTRL S and you should have a centered block. If there is any other characters in that same space they are written over and lost. So be careful!! Move Left CTRL L To move the block to the left one position press CTRL L. Move Right CTRL R To move block to the right press CTRL R. Move Up CTRL U To move it up press CTRL U. Move Down CTRL V To move it down press CTRL V. Move - Copy CTRL M CTRL C To move the entire block from one position to another use the CTRL M command. Once you've blocked off the area you wish to move, position the cursor to where the upper left hand corner will be moved to. Press CTRL M and the whole blocked area will be moved. The only difference between Copy and Move is that copy doesn't erase the blocked area but only copies it. Press CTRL C to copy the copy. PRINT BLOCK CTRL A This command sends all of the blocked characters to the printer including graphics. You must make sure that you have loaded a character set. If you are using the alternate character set make sure that it is also loaded. Make sure you have the right printer because E.E. is dedicated to only one printer at a time. [Copy Block From Screen Two to Screen One] CTRL K This command is used in conjunction with the ALTERNATE VIDEO screen. By blocking off the section of the screen you wish to COPY to the regular screen and then pressing a CTRL O to return to the regular screen then PRESS a CTRL K and it will copy the BLOCKED shape to the current cursor position on the REGULAR SCREEN one. [Hi_Plot..Low-Plot..Draw-Circle] [CTRL E -- CTRL X -- CTRL Z] High Plot CTRL E We are now into the plotting functions. CTRL E doubles your standard screen resolution by allowing you to access one-eigth of a character block at any time. This is a resolution factor of 160 X 99 pixels per screen. This command doesn't allow you to pick the character you wish to plot but does allow you to pick the attribute that you wish to use. What ever attribute is in the second block marker is the attribute that it will plot with. Low Plot CTRL X This allows you to plot any character you wish along the plot lines. The real resolution is 80 X 24. By putting the character and the attribute in the second marker it will plot that line using that character and attribute. Draw A CIRCLE CTRL Z The first marker is the center of the circle and the second marker is the radius. The attribute is the only thing we are allowed to specify. That must be in the radius marker. This is also a high plot function and there is no low plot. If your circle is too large for the screen it will only plot those points that are on the screen. Change -- Attribute CTRL H This will change all of the attributes within the marked block to whatever attribute is in the second block marker . It doesn't affect the characters themselves. Set Left Margin CTRL G This allows you to temporarily alter the left margin of your printer. The uses are quite apparent when you couple this with the block print command, CTRL A. You can move the paper forward or backward to where you wish to print then set the left margin. It is quite easy because the left margin will be set to the same value as the X value on your cursor position. You may have to turn on your status line (CTRL E) to see this. Then send your block with a CTRL A. The printer will start printing at the new left margin. When done it will reset your printer margin back to zero. You can see that these commands used together will allow you to cut and paste right on the printer itself. File Information Those of you that wish to do other applications not stated within the previous documentation you must understand what the picture file is doing. A 5 byte header: Byte One : The first byte is a flag that tells Electric Easel that it is an Easel file. Byte Two : The second byte is the starting 'X' coordinate. Byte Three: The third byte is the starting 'Y' coordinate. Byte Four: The fourth byte is the ending 'X2' coordinate. Byte Five: The fifth byte is the ending 'Y2' coordinate. The rest of the file is divided by three. The first third is the character codes and the second third are the attributes coded in a special way and the last third is a byte map to tell wether the character is a graphic character or alphanumeric or a null. -------------------------------------------------------------------- =================================================================== Easel Graph Introduction "Easel Graph" here after referred to as "E.G." is a program that will plot and display any numeric data that is input into it. "E.G." will plot the numeric data created by "Supercalc", "Dbase II","Mbasic" or by any other means which creates data in a format as described below. " E.G." has the ability to plot data in four different ways. They are a line chart, vertical bar graph, horizontal bar graph and exploding or non exploding pie charts. E.G. features auto- scaling, file formatting, file editing, system utilities and a means of saving the actual graph so as to be used with "Electric Easel" and "Electric Slide Show". You may also alter your data or file format from within the program itself. You can then save the format or data to a new file or replace the old files. You may also print any file exactly as it appears on the screen with all of the attributes. We have made the graphs so that you may go into "Electric Easel" and spruce up or alter your graph's look in any way you see fit. Once the graph is of the look you wish then you can print out all or part of it from within "Electric Easel" or SAVE it as a "Electric Easel" picture file. You will find this to be an easy program to use. Fully menu driven with easy to understand commands and instructions. You'll find that you can use the same data for all of the four charts only the chart formatting must be different. All of these charts allow internal labeling with titles and sub-titles. You may also enter data in "Decimal" or "Exponential" as well as displaying in the same. This is ideal for very large numbers used in scientific applications (E + or - 32). You can display up to 6 places to the right in the floating point format but do 7 digit precision math. If your number is greater that seven digits to the left it will be displayed in exponential format. We hope that you'll find these charts to be of great value to you in your business, educational and or scientific uses. Coupled with "Electric Easel" and "Electric Slide Show" we feel that these combine to be some of the most powerful packages available on CPM machines and have many valuable uses. File Formatting E.G. is capable of loading two types of files, referred to as format and data files. The format file contains all of the information to create the actual graph. The data files contain the numeric data in which the graph points will be plotted. We have used the file extension ".fmt" to indicate it to be a format file and use the file extension ".dat" to indicate the file to be a data file. Example of a FORMAT file TITLE SUBTITLE LABEL,ATTRIBUTE,WIDTH,LOCATION etc.... The above is the example of the FORMAT for the data points to be plotted. At the top of your file must be the title of your graph. Then your subtitle must follow. For each data point you wish to enter you must have a format addition in the file to match. A word of warning, use spaces instead of tabs, otherwise you may have some unexpected results. Example of FORMAT Continued: RAMA Business Profits Magnetic Media Jan.1983,1,3,1 Feb.1983,0,2,2 March1983,1,3,4 April1983,0,2,5 May1983,1,3,7 June1983,0,2,8 July1983,1,3,10 August1983,0,3,11 Sept.1983,1,3,13 Oct.1983,0,3,15 Nov.1983,1,3,17 Dec.1983,0,3,18 Above is an example of a business plotting their profits for last year. LABEL:Jan. 1983 ATTRIBUTE:1 = DIM WIDTH:3 = Three columns wide. LOCATION:1 = For the Horizontal Chart you may place your data to be plotted anywhere within the boundaries from 0 - 50. This one starts at position one. We do recommend to have location's in ascending order (1,2,3,etc..) or your chart may get slightly confused. Example of DATA file 1200.0000 1300.0000 1000.0000 1203.9000 3000.9600 1000.12000 9432.5400 1500.9900 1400.2300 1245.2300 15000.0000 12.32E+02 As you see above the data file is a column of numbers terminated by a carriage return. Steps to Display a Horizontal Graph We are now going to load the previous files we have just been reviewing and go through the process of displaying a file. STEP 1. A> chart1 or ochart1 This will load the program "Easel Graph". Before you will appear a menu : Main Menu Input Data File Set Scale Input File Format System Utilities Exit To Cpm Edit File Mode Begin Graphing Save Menu To make a selection use the up and down arrow keys then press . This will activate your selection. Our first selection from our menu will be our data file input. hbar.dat This will load your numeric data. Our next selection will be our format file. hbar.fmt This will load data for your horizontal format. Next set your scale. It will prompt you for auto scaling Y/N ? Press 'Y' : This will set the auto scaling which the "Maximum" number is the result of the average of all of the data to be plotted. The "Minimum" number is always set to zero. Press 'Begin Graphing' A menu will appear : Graph Menu ---------- Line Chart Vertical Bar Chart Horizontal Bar Chart Pie Chart Return Horizontal -- Vertical -- Line -- Pie Bar Chart Information This program creates charts based on information input either by file or by our hand entry method. You have complete control over the location and the attributes (dim, bright, inverse, blinking, underline etc..). The Maximum and Minimum scale values are displayed as well as the scale graduations. "Line:" "Vertical:" "Horizontal" FORMAT: TITLE:A maximum of 40 characters in length. The Title is inversed and centered automatically. SUBTITLE:A maximum of 40 characters in length. The Subtitle is inversed and centered automatically. MAXIMUM:This is the maximum number that can be displayed on the screen. When this number is reached the program will cease plotting that number. MINIMUM:This is the minimum data point before starting to data plot. For instance if the minimum value is set to 500 then all numbers less than 500 won't be displayed . "Horizontal" DATA VALUES :This program can plot and display up to twenty values at any time. "Vertical & Line" DATA VALUES :This program can plot and display up to twenty - two values at any one time. "PIE" DATA VALUES :This program can plot and display up to ten values at any one time. LABEL :This can be no larger than 12 characters. ATTRIBUTES :Check appendix for the list of attribute codes. "Horizontal" "Vertical" WIDTH:From one - TWENTY places in width. "Line - Pie" WIDTH:The width is preset at one-half a character in width. "Horizontal" LOCATION:From zero to twenty. A "1" will mean the bar will be displayed in the first row at the top of the screen. "Line & Vertical" LOCATION:From zero to fifty. A "1" will mean the bar will be displayed in the first column to the left. "Pie" LOCATION:There is no location since on a pie chart it displays the label at each slice which the program figures out for you. Line Horiz Vert SCALING:Auto-scaling is a way of letting the program scale for you. We use a simple system. The average of all of the data points is our Maximum and the Minimum is '0'. You may wish to enter your own scale, this is very easy to do. By pressing scaling from the menu and enter your maximum and minimum numbers. "Pie" SCALING:There is no scaling on a pie chart because the pie is divided using percentages. HINTS: Your width must be greater than zero or it won't show up on the graph. You may wish to overlap your bars to create interesting displays. If the Location + Width is within range of another data point LOCATION they will overlap. Also if you use overlapping with bright alternated by dim make sure your bars are even number widths. This is an unfortunate by product of increased screen resolution. If your data value is greater than your maximum it will be truncated at the end of the graph. All negative values will be treated as absolute values. If you have forgotten to scale your graph it will tell you. If you attempt to use a location greater than '20'if using the horizontal charts then it will be displayed as the bottom bar. In the pie charts if two or more data points located in succession are less than 5% of the pie then they will share the same slice but will be marked separately. If you try to explode a slice under 5% it won't. Sorry but resolution problems. FILES: FORMAT : TITLE,SUBTITLE, LABEL,ATTRIBUTE,WIDTH,LOCATION DATA : DATA VALUE HORIZONTAL Demo Filenames : HBAR.DAT HBAR.FMT VERTICAL & LINE Demo Filenames VBAR.DAT VBAR.FMT PIE CHART Demo Filenames : PIE.DAT PIE.FMT SET SCALE Select From the MENU Press Do you wish auto-scaling Y/N? If you press 'Y' it will automatically set your Maximum values as the average of all of the data values. Your Minimum value will be set at "0". If you press anything else your prompt will ask you : Input your Maximum value ? xxxxxxxxx Input your Minimum value ? xxxxxxxx Your SCALE is now set! Edit File and Data Entry Mode In this mode you may do original data entry or edit any file already in memory. Below is an example of what the screen will look like. EX: Display ------------ Edit Mode Rec # 0 No. Rec. 10 Label Jan. 1984 Attribute 1 Width Float ----> Format 3 Location 1 Value 1200.0000 [A]DD [D]elete [T]itle [S]cale [R]eturn [C]hange [E]xpontenial [B]ackup [U]ndeleted [A]DD This command will allow to you add a new record to your file. This will advance to the last record plus one and then enter into the Record EDIT MODE. [D]elete Delete allows you to tag a file. It will still be displayed in the Edit Mode but will not be used by the graphs or be sent to a file when saved. There will be a flag, [DELETED]------>, next to a flagged file. [T]ittle This will allow you to change your title and sub-tittle. A carriage return will leave the title's unchanged. [S]cale This will allow you to rescale your data. [R]eturn Returns you to the main menu. [C]hange This puts you into the Record EDIT MODE. Your up and down arrows will move through the different fields. To change a field move up or down till you have the field you wish to change then press any key. That field label will start blinking or highlight. Type in your new data then press a and continue this process until finished. Then press ESC to quit editing. This puts you back into the DISPLAY MODE. [E]xpontenial When pressed will cause all values to be displayed in exponential format. EX: Float = 123.4000 Exponential = 1.234E+2 [B]ackup This will display the PREVIOUS data record. This will display the NEXT data record. [U]ndelete If you change your mind about deleting a record then pressing this will undelete it. CLEAR ALL DATA FILES Press This will clear memory of all of your FORMAT and DATA records. BEGIN GRAPHING ...Graph..Menu... Line Chart Vertical Bar Chart Horizontal Bar Chart Pie Chart Return Make your selection and press If you receive a message telling you to set your scale then you will have to leave this menu and return to the main menu and scale your DATA. If you have no hitches with the exception of the pie chart you will be watching your graph being drawn. To leave your picture graph press esc. A message above will appear saying "saving picture to memory". It will take about ten seconds to do this so be patient !!! This allows you to return to the main menu and save the chart directly. If your selection was the PIE CHART then : ..Exploding Pie Chart Menu.. Explode Largest Slice Explode Smallest Slice No Explosion of Slices Explode 'X' Slice Return Press one of the selections Then follow the instructions above. SAVE MENU Save Data Save Format Save Chart Return DATA : Will save all undeleted data to a file of your choice. FORMAT : Will save all undeleted format data to a file of your choice. CHART : Will save your picture graph in the "ELECTRIC EASEL" format. In this format you will be able to load your picture into Electric Easel and send all or part of it to your printer. This is the only way to print your graph!!! You may also use this in "Electric Slide Show". PRINT GRAPH There is no facility to print within Easel Graph!! The reason for this is that we have decided that you can save your chart in a picture format, load your picture into the Electric Easel and alter it and then print it in the Electric Easel. Refer to SAVE CHART! How to Create a Format File The advantage of creating a FORMAT file is that it makes it easy to produce the same graph with different sets of DATA values. The most direct way of creating a Format file is to load Wordstar in the "N" mode or non-document mode. Type in the following format without any extra lines or spaces: TITLE SUBTITLE LABEL,ATTRIBUTE,WIDTH,LOCATION LABEL,ATTRIBUTE,WIDTH,LOCATION LABEL,ATTRIBUTE,WIDTH,LOCATION LABEL,ATTRIBUTE,WIDTH,LOCATION Etc.. EX: RAMA Business Profits Magnetic Media Jan. 1983,1,3,1 Feb. 1983,0,2,2 March 1983,1,3,4 April 1983,0,2,6 Etc... DATA FILES Data can be entered into Easel Graph by several methods. One method to enter data while in E.G. is the EDIT MODE. Almost any method that creates a data file in a single column can be used by E.G.. DATA FILES WITH SUPERCALC You may save a column or row of data from Supercalc and have it read by E.G.. We will assume that you have loaded SuperCalc and have data located in positions c1 through c10. This is the perfect amount to run a pie chart in Easel Graph. Please follow along while we create an Easel Graph compatible file. Step 1: Type "/O". This puts you in the Output mode. Step 2: Type "D". This will take all of the data from the DISPLAY. Step 3: Type "c1:c10". This is the RANGE of the data to be output. Step 4: Type "D". This specifies DISK output. Step 5: Type in the filename, "dr:filename.ext". This is the output filename. You now have an Easel Graph compatible file. The only thing you have to remember is to answer "YES" to the prompt in "Easel Graph" that asks you if your file is a Supercalc formatted file. Once in Easel Graph you can change the data format by saving it again. This will change the file so that it is a normal data file. DBASE FILES To use a Dbase II file there is a special function built into Dbase II using just one command line. Please follow along while we create an Easel Graph compatible data file. Let us assume we have Dbase II loaded an running and that we have a file containing the data we wish to have plotted "IN USE". We will assume that the Structure data file is called "VDATA". To create the file, type in the following: COPY FIELD VDATA TO B:GRAPH.DAT DELIMITED This causes the numeric data to be copied to a file called "graph.dat" sent to the B drive. The command DELIMITED forces the file to be output into a file in a format that Easel Graph can read. MBASIC -- 'C' Language Support To create a file for "Easel Graph" is really quite easy. We will give some examples below. Each of these examples contain remarks for you to follow the program flow. Mbasic : 10000OPEN "O",#1,"GRAPH.DAT" 10005REM "Open a sequential file names "GRAPH.DAT". 10010FOR A = 1 TO 10 10015REM "N(A) is the Data to be sent to your output" 10020PRINT #1,N(A) 10025REM "Send the data in N(A) to your opened file". 10030NEXT A 10040CLOSE #1 10050REM CLOSE THE FILE 10060RETURN 'C': Make_file(numeric_values,n) int numeric_values[],n; /* An array of 'n' numeric values to send to your output file */ { int *chan,i; /* Open a file named "GRAPH.DAT" */ chan = fopen("GRAPH.DAT","w"); /* Put 'n' elements to the file adding a line feed after each element. */ for(i = 0; i < n ; i++) { putc(numeric_values[i],chan); putc('\\n'); } /* Close the file and then return */ fclose(chan); } -------------------------------------------------------------- ============================================================= The Electric Slide Show Introduction Electric Slide Show, hear after referred to as "E.S.S.", is a program for displaying computer generated picture slides, creating fancy menus, doing business and educational presentations. The only limitations with E.S.S. is your imagination. "E.S.S." comes with it's own micro language that allows programing with special effects the pictures created with "Electric Easel" or "Easel Graph". It is easy to use and has vast potential for business and educational presentations. E.S.S. allows interaction with the outside viewer. It is not only a display program but can also be programmed from an outside input to do a multiplicity of different tasks. The micro language is a simple english group of commands that allow you to program these pictures for what ever tasks you deem. These include special effects like displaying a curtain like effect when entering or clearing the screen with the same sort of effect. There are instructions for a wiping of the screen from top to bottom or bottom to top. There are different wait states as well as commands that wait for specific input. We have also included IF and ELSE statements. "E.S.S." reads a master file that may be created by using any text editor or word processor in the non-document mode. This file contains a list of instructions programmed to display your pictures. We feel that E.S.S. is easy to use and that you will be able to start immediately making professional displays that will have even top programmers wondering how you did it. Instruction Summary WAIT This is similar to the INKEY$ statement in Basic. It must always precede an IF statement. This allows a single character to be put into a register that the IF statement has access to. For instance if you press the 'A' key then if an "IF,A" follows then this statement would be executed. IF IF,x,x2,x3,etc This is a simple form of the "IF" statement used in Basic and other high level languages. The only difference is that this IF only looks for two types of operators 'Equals' or an 'OR Equals'. Limit your IF arguments to less than 10. Example: WAIT IF,A,a,B,b If you press 'A' or 'a' or 'B' or 'b' then this IF will be executed. If not then it won't. ENDIF This ends the instructions executed in an IF statement. Without this there is no way to step out of the IF statement logic. An Example : WAIT IF,A PRINT,0,0,We are executing a test answer. ENDIF Would print at the top of the page, "We are executing a test answer." if you had pressed an 'A' on the keyboard. ELSE This is executed after an IF statement and must be terminated with an ENDIF. An Example : WAIT IF,A BEEP,2 ENDIF ELSE BEEP,1 ENDIF If an 'A' was not entered from the keyboard you would hear only one beep instead of two. PRINT PRINT,x,y,message PRINT allows you to send to the screen at any x-y location one line of 65 characters or less . Look at the previous example. BEEP BEEP,x This allows you to send a beep through your computer. You may send between 0-9 beeps on command. An Example : WAIT IF,A BEEP,2 ENDIF Pressing an 'A' from the keyboard will beep twice. REPEAT REPEAT,x REPEAT,x sets a counter of up to 8 times. Each time the entire file is executed it will decrement the counter and if the counter is greater than zero then it will start executing the file all over again. If x > 0 and x < 9 then it will execute x amount of times. If x equals '9' then you will enter into an endless loop. You must then put an END statement in order to get out of this endless REPEAT,9. An Example : REPEAT,9 equals an endless loop. REPEAT,2 will execute three times or two times once the REPEAT has been discovered. PAUSE PAUSE,x PAUSE,x where x can be an integer between 0 - 9. For each integer there is about a 10 second pause. A '9' will cause the program to stop and wait for any key input. It prints on the very bottom line a prompt. EXEC EXEC,d:filename ARGS Will load and run any .COM file if it is available on request of this instruction. The advantage of this instruction is that it will allow you to run programs from a menu. If it can't find your file it will execute the next instruction. Load Picture File d:filename.pic,TYPE,TIME This is the way we load our pictures into E.S.S. . This file must be a picture file either created in "Electric Easel" or "Electric Graph". We will discuss TYPE a little farther down the line but for now it is the way we display our picture. The TIME is a display time between 0-9 with a value of approximately 15 seconds for every integer. RETURN RETURN,filename.cmd This instruction returns you to the "Electric Slide Show" and loads the filename specified by RETURN. If filename.cmd is a '0' character it will toggle the return option to OFF. TEXT TEXT,filename.txt This instruction allows you to display any text file in your slide show. CLEAR CLEAR,type,attribute,time,character Using the CLEAR facility you may clear the screen in a number of interesting ways. type The different ways in which to clear the screen. attribute The different character attributes such as dim, inverse, blinking, underline, and any combinations thereof. time This is the pause between executing the next instruction. The time values are the same as those from the previous instructions. character This is the character you wish to clear with. For example if you put a 22 for your character then you will send a solid white block to the screen. In the appendix is a full set of your ASCII and graphic character codes. DCROLL DCROLL,TYPE,Y1,Y2,TIMER This command will delete a series of rows specified by y1 -> thru y2. It will delete it by scrolling either left - > right.. or right > left. Type = 0 for right -> left or '1' for left -> right. Y1 equals the first row starting from the top. If y1 = '0' then it would start at the Top of the screen in the first location. Y2 equals the second location or the to point. Timer is how long we want this to stay on the screen. SCROLL SCROLL,FILENAME,TYPE,Y1,Y2,TIMER This command is the Inverse of DCROLL it will load a 'Filename.pic' and put just the sections on the screen specified by Y1 -> Y2. The same syntax as above apply here. BOARD BOARD,TYPE,Y,Att,TIMER,MESSAGE This command creates a bill board like effect with any printed message specified in the MESSAGE. TYPE is either right -> left = 0 --- left <- Right = 1.'Y' equals which row. 'Att' equals the attribute in which to print the message. If 'Att' equals 1 the message will be Dimmed. TIMER equals the speed in which the message scrolls by. A value of '50' will be about average readable speed. MESSAGE must be less than 80 characters. CLEAR TYPES Special Effects '0' = Clear the screen starting at the left and clearing to the right. '1' = Clear the screen starting at the right and clearing to the left. '2' = Clear starting from the bottom clearing to the top of the screen. '3' = Clear starting from the top clearing the screen to the bottom. '4' = This is a curtain like clear. It starts on both extreme sides and closes toward the middle. '5' = This is a curtain like clear. It starts in the middle and clears to the two extreme sides. '6' = This clears using vertical bars until the entire screen is cleared of the picture. '7' = This clears the screen using horizontal bars until the entire screen is cleared of the picture. '8' = This is a special effect that removes chunks of the picture to give a fading like quality. '9' = This is a normal clear screen with no special effects. ATTRIBUTES KEY Attribute --- --------- A '0' = Normal screen conditions. B '1' = Half-intensity on all characters. C '2' = Blinking on all affected characters. D '3' = Half-intensity and Blinking. E '4' = Inverse. F '5' = Half-intensity and Inverse. G '6' = Inverse and Blinking. H '7' = Inverse and Half-intensity and Blinking. I '8' = Underlining. J '9' = Underlining and Half-intensity. K '10' = Underling and Blinking. L '11' = Underling and Half-intensity and Blinking. M '12' = Underlining and Inverse and Half-intensity. N '13' = Underlining and Inverse and Dim. O '14' = Underlining and Inverse and Blinking. P '15' = Underlining and Inverse and Half-intensity and Blinking. Q '16' = Alternate Character Set. LOAD EFFECTS [filename.pic,TYPE,TIME] LEFT <- RIGHT '0' = This enters the picture at the far right of the screen and moves it to left until the whole picture is on the screen. LEFT -> RIGHT '1' = This enters the picture at the far left of the screen and moves it to right until the whole picture is on the screen. BOTTOM - > TOP '2' = This enters the picture from the bottom --> TOP until the whole picture is on the screen. TOP - > BOTTOM '3' = This enters the picture from the top --> BOTTOM until the whole picture is on the screen. LEFT < - MIDDLE - > RIGHT '4' = This loads the picture with a curtain like display starting from the middle to the extreme left and right. LEFT - > MIDDLE < - RIGHT '5' = This loads the picture with a curtain like display starting from the extreme left and right ---> MIDDLE. BOTTOM -> MIDDLE <- TOP '6' = This loads the picture with a curtain like display starting from the extreme bottom and the top ----> MIDDLE. This ends the command summary. Please read on for the tutorial on how to program your Picture files. Tutorial Electric Slide Show & Menu Maker How does E.S.S work? E.S.S. reads in a master file created by you in 'Wordstar' or any other text editor that has a Non-Document mode. This master file has in it the commands to load the pictures and how to clear them etc... We will program it just like we were dealing with any other language like Mbasic or Pascal etc.. Here is a sample program of a Menu : MENU.PIC,4,0 WAIT IF,1 COMPUTER.PIC,6,0 CLEAR,1,1,0,22 ENDIF ELSE IF,2 HORIZ.PIC,2,0 CLEAR,8,2,0,0 ENDIF ELSE IF,3 LOGO.PIC,4,0 CLEAR,5,0,0,0 ENDIF ELSE IF,4 PRINT,12,12,EXITING TO CPM END ENDIF REPEAT,9 We have furnished you with several picture slides to use as you see fit. All of the picture files used in this demonstration are on the distribution disk furnished by us. We also have the program files on the disk as well. We will start from the beginning, so get out your Text Editor. We will use Wordstar as our text editor. WS N enters the non-document mode. Make sure you start at the top of the file. For the program will try to work on the empty lines and you will get some error message, probably an "Incorrect number of arguments" error. Leave no spaces at the side or in between commands. Now we will start our programming MENU.PIC,4,0 This commands the program to load a picture file named 'menu.pic' into the video memory. The '4' is the TYPE of load. If you look up above on page '42' it will tell you which one it is. '0' is the amount of time you wish to display this picture. Normally this would be about 15 seconds but in this case our next instruction is a WAIT. WAIT WAIT will sit forever and wait for any single key input. This will keep the picture above on the screen until a key is depressed. Before any IF statement can be executed you must have a WAIT before it. IF,1 If a '1' is pressed execute all instructions under an IF until an ENDIF is found. EPIC.PIC,6,0 If above is true then load the file "epic.pic". '6' is the way you load the file and the '0' is the time allotted. CLEAR,1,1,0,22 This clears the last picture using the TYPE equals '1', ATTRIBUTE equals 1 which is a dim, TIME equals '0' which is 15 seconds or less. Character is the Osborne I ascii graphic code for a solid white block. ENDIF End the execution of the last IF statements. ELSE If the IF above is not true then it will execute the next instruction. IF,2 If a '2' is pressed execute all instruction under an IF until an ENDIF is found. BAR.PIC,2,0 If above is true it will load picture file "bar.pic", in '2' TYPE of load, for '0' TIME. CLEAR,8,2,0,0 Clear the screen using a TYPE '8' clear, with the ATTRIBUTE of '2', which is blinking, for '0' TIME, with ASCII graphic code of '0' to be replaced on the screen. ENDIF Ends the execution of these commands. ELSE IF all above are false execute the next command. IF,3 If you have pressed a '3' execute the next group of instructions. LOGO.PIC,4,0 If above is true then load picture file "logo.pic", in '4' TYPE load, for '0' TIME. CLEAR,5,0,0,'E' Clear the screen using TYPE '5' clear, using '0' attribute, which is normal, for '0' TIME, using ASCII character code for 'E' for the display. ENDIF End the execution of these previous instructions. ELSE IF,4 If a '4' is pressed then execute the next instruction. END This will return execution to CPM. ENDIF REPEAT,9 This is executed unless '4' is pressed. This puts us in an endless loop with the only way to leave is by pressing '4'. This ends our program. We hope this gives you a good demonstration of how to program in the Tiny Easel language. Error Messages 1. "Must have an IF statement before an ENDIF." 2. "No nested WAIT's -- Must have ENDIF first." This means that you are not allowed to nest your WAIT's. You must have an ENDIF before you can have another input. It has no stack to remember more than one input at a time. 3. "You have an incorrect number of arguments." This can mean that you have two few arguments, but can also mean you are have put spaces or line feeds in your commands. 4. "Lower case letters in command line". This tells it like it is. You must use UPPER case letters for your commands. The reason for this was that it allows us to use lower case in our PRINT message. All instructions are reserved and all file names cannot have the same name as the our reserved words. If your program terminates or seems to go off into the universe somewhere never to return I would check your ARGS count. ---------------------------------------------------- ================================================ The Font Generator This program is the backbone of all of the other programs in this package. It is more of a utility than a main program but it's importance is not to be underrated. With the Font Generator we can create our own character sets in which to use in the other Easel programs. For instance we have furnished you with five different character sets in which to use with "Electric Easel", and "Easel Graph". These graphic sets are listed in the Appendix. Font Generator will allow easy creation of fonts and full character sets by using a global editor structured for creation of characters in an 8 by 16 dot grid. If you have this program on an Osborne Executive you can use this program to convert the character sets created on and for the Executive computer to a format compatible with "Electric Easel" and all of the other Easel programs. Or if you have access to these .CHR files you can convert them to run on any other Easel compatible computer. We hope you enjoy creating these Fonts and we have furnished you with a summary in the use of this program. To pick a selection use your arrow keys and then press your ESC. Overview ...[Edit Character Set]... This is the part of the program that actually creates new characters or alters old characters. Once entered into this section of the program there will be a prompt. PROMPT Enter the character to be edited This will start at the decimal location you specify. For instance if you wish to create an ASCII correct character set I would recommend that you look at the character sets located in the appendix. You will notice that 0 - 31 are Blank characters. 32 - 127 are the ASCII standard character sets. If you are starting to create a new character set then you should start at decimal '0'. '0' You are now editing character the first character. CURSOR CONTROLS : CTRL: D or 6 = RIGHT S or 4 = LEFT E or 8 = UP X or 2 = DOWN EDITOR These move your cursor around in the 8 x 16 block of dots located in the far left of the screen. PRESS A PERIOD Where ever you wish a dot to be filled. SPACE Where ever you wish to erase a dot. ESC Quit Editing Character. Q Return to Main Menu. I This command is a global command which changes all of the asterisks to spaces and all spaces to asterisks. C This commands copies character A to B. L This Global command shifts the entire character to the LEFT by one position. R A Global command that shifts the entire character to the RIGHT. N A command that inserts a row of asterisks. S A command that inserts a Column of asterisks. T Delete a Column. B Delete a row. K A command to fill the entire grid with asterisks. CTRL I A command to send the character to the printer for your inspection. L This disassembles the character and gives you the byte value that comprise the character. Useful for programmers making there own characters outside of the EASEL package. J This command will dump the characters between x -> n to the printer and display the ASCII value above each one. F A command to advance you to the next character position. For instance if you are at decimal '65' you will now advance to '66'. B The reverse of command 'F' above. V This gives you the decimal value of the character which we are editing. Y This will clear an entire grid. Save Character Sets We offer several different ways to save your character sets. EASEL FORMAT MBASIC FORMAT ASSEMBLY FORMAT 'C' FORMAT The Easel format is the format that all of the programs in the easel package use to print with. The Mbasic, Assembly and 'C' format is when the characters are broken down into their numeric values in 16 bytes. The first 8 bytes is the Top of the character and the second 8 bytes is the bottom. EXAMPLE 01234567 First 8 bytes 01234567 Second 8 bytes 0........ DATA 0,252,65,65,65,65,252,0 1..****.. 2.*....*. 3.*....*. 4.*....*. EPSON -- Is the Reverse 5.******. NEC 8023A -- Format 6.*....*. 7.*....*. 0.*....*. DATA 0,3,0,0,0,0,0,3,0 1.*....*. 2.*....*. 3.*....*. 4........ 5........ 6........ 7........ -------------------------------------------------- =============================