ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»º                                                                       ºº ÛÛÛÛÛÛÛÛ              ÛÛÛÛÛÛ        Û      ÛÛ°          ÛÛ°           ºº ÛÛÛ°°°°°ÛÛ            ÛÛ°°°°ÛÛ      ÛÛÛ     ÛÛ°          ÛÛ°           ºº ÛÛ°    °°°            ÛÛ   °°°     ÛÛ°ÛÛ     ÛÛ°        ÛÛ°            ºº ÛÛ°                   °°ÛÛÛÛÛ     ÛÛ°  ÛÛ    ÛÛ°        ÛÛ°            ºº ÛÛ°                     °°°°ÛÛ   ÛÛÛÛÛÛÛÛÛ    ÛÛ° ÛÛÛ  ÛÛ°             ºº ÛÛÛ     ÛÛ            ÛÛ    ÛÛ   ÛÛ°°°°°ÛÛ    ÛÛ°ÛÛ°ÛÛ ÛÛ°             ºº ÛÛÛÛÛÛÛÛ°  ÛÛÛÛÛÛÛÛ  °ÛÛÛÛÛÛ°   ÛÛ°    ÛÛ     ÛÛÛ° °ÛÛÛ°              ºº °°°°°°°°   °°°°°°°°   °°°°°°    °°     °°     °°°   °°°               ºº                                                                   ºº                                                                   ºº ÛÛÛÛÛÛÛÛÛÛÛÛ   ÛÛÛÛÛÛ    ÛÛÛÛÛÛ   ÛÛ°       ÛÛÛÛÛÛ                 ºº     ÛÛ°°°°°  ÛÛ°°°°ÛÛ  ÛÛ°°°°ÛÛ  ÛÛ°      ÛÛ°°°°ÛÛ                ºº ÛÛ°      ÛÛ°   ÛÛ  ÛÛ°   ÛÛ  ÛÛ°      ÛÛ    °°                ºº     ÛÛ°      ÛÛ°   ÛÛ  ÛÛ°   ÛÛ  ÛÛ°      °°ÛÛÛÛÛ                 ºº     ÛÛ°      ÛÛ°   ÛÛ  ÛÛ°   ÛÛ  ÛÛ°        °°°°ÛÛ                ºº     ÛÛ°      ÛÛ°   ÛÛ  ÛÛ°   ÛÛ  ÛÛ°      ÛÛ    ÛÛ                ºº     ÛÛ°       ÛÛÛÛÛÛ°   ÛÛÛÛÛÛ°  ÛÛÛÛÛÛÛ  °ÛÛÛÛÛÛ°                ºº     °°        °°°°°°    °°°°°°   °°°°°°°   °°°°°°                 ºº                                                                   ºº           Copyright (C) 1990 Falcon Software      pPpRpEpSpSp pApNpYp pKpEpYp p  ºº                                                                   ºÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                            pCp_pSpApWp pTpopoplpsp pDpepmpop p                           º°°²²²º                                                                         º°°²²²º  The C_SAW Tools is a group of functions and utilities for the C        º°°²²²º  language.  It includes a wide variety of functions that make applica-  º°°²²²º  tion development easier and faster.  These functions range from simple º°°²²²º  string handling to sophisticated data entry routines.  One of the best º°°²²²º  features is the Screen Design Utility which allows you to create       º°°²²²º  professional looking screens in just minutes.                          º°°²²²º                                                                         º°°²²²º  The C_SAW Tools was written as an alternative to some of the higher    º°°²²²º  priced tool kits available for C.  The leading tool boxes are going    º°°²²²º  for around $250.00 or so and they usually sell the screen generator    º°°²²²º  as a separate product.  The C_SAW tools sell for as little as $39.50.  º°°²²²º                                                                         º°°²²²º  This demo will show you some of the most useful functions that the     º°°²²²º  C_SAW Tools provide.                                                   º°°²²²º                                                                         º°°²²²º  Thanks for looking at the C_SAW Tools!                 pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                 p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pCp_pSpApWp pTpopoplpsp pDpepmpopnpsptprpaptpipopnp pMpepnpup p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pFpaplpcpopnp pSpopfptpwpaprpep p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  Screen Design Utility   º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  Video Routines          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  Data Entry Routines     º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  String Manipulation     º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  Miscellaneous           º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º  Exit                    º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²º                          º°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                          pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp p                       º°°²²²º                                                º°°²²²º  The Screen Design Utility or generator is a complete program that      º°°²²²º  allows you to design screens and windows.  This program gives you the  º°°²²²º  freedom to create your screens exactly as you want because you have    º°°²²²º  complete control over the process.  You have at your fingertips, many  º°°²²²º  tools such as instant color changes, block operations with copy, cut,  º°°²²²º  paste, move, color change, character fill and box creation.  You'll    º°°²²²º  find the line draw function to be intuitive and a pleasure to use.     º°°²²²º                                                                         º°°²²²º  The Screen Design Utility takes the technical aspect out of creating   º°°²²²º  professional looking screens and turns it into a creative process.     º°°²²²º  Not only will your screens look nicer, but the time and code involved  º°°²²²º  in creating the screens and windows will be substantially reduced.     º°°²²²º                                                                         º°°²²²º  Let's look at a sample task of creating a screen for a simple mailing  º°°²²²º  list program.                                                          º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p º°°²²²º                                                          º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                             pVpipdpepop pRpopuptpipnpepsp p                             º°°²²²º                                                                         º°°²²²º The C_SAW Tools provide many routines that allow you to control your    º°°²²²º screen.  A number of the routines were designed specifically to support º°°²²²º displaying screens created from the Screen Design Utility.  Others were º°°²²²º created to enhance your control over the screen.                        º°°²²²º                                                                         º°°²²²º When you create a screen via the screen design utility, displaying the  º°°²²²º screens can be done very easily with little coding.  The most common    º°°²²²º function is the disp() function.  It works like this:  Let's suppose    º°°²²²º that you created a screen with the Screen Design Utility and you named  º°°²²²º the file myfile.scr.  Also because it was your first screen, it would   º°°²²²º be screen number one.  To display the screen from the file to the       º°°²²²º screen your program might look like:                                    º°°²²²º                                                                         º°°²²²º   c h a r s c r e e n [ 4 0 0 0 ] ; / * a l l o c a t e s p a c e f o r t h e s c r e e n * / º°°²²²º   d i s p ( " m y f i l e . s c r " , 1 , s c r e e n ) ; / * d i s p l a y t h e s c r e e n * /             º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿pu                     ³p pWpipnpdpopwpsp pcprpepaptpepdp pwpiptphp ptphpep pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp pcpapnp paplpspop³pÛ                     ³p pepapspiplpyp pbpep pdpipsppplpapypepdp popnp ptphpep pspcprpepepnp.p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ³p pTpop pdpipsppplpapyp ptphpipsp pwpipnpdpopwp,p ptphpep popnpep plpipnpep pCp psptpaptpepmpepnptp pwpapsp:p p p³pÛ                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ³p pdpipspppwp p(p"pdpepmpop.pspcprp"p,p p6p,p p1p,p1p,p p1p5p,p5p9p,p p5p,p1p0p)p;p p p p p p p p p p p p p p p p³pÛ                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ³p pTphpaptp pmpepapnpsp ptpop pdpipsppplpapyp ptphpep p6ptphp pspcprpepepnp psptpaprptpipnpgp pfprpopmp prpopwp p³pÛ                     ³p p1p,p pcpoplpupmpnp p1p ptpop prpopwp p1p5p,p pcpoplpupmpnp p5p9p papnpdp pdpipsppplpapyp piptp psptpaprptp-p p³pÛ                     ³p pipnpgp paptp prpopwp p5p,p pcpoplpupmpnp p1p0p.p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p PRESS ANY KEY  p p³pÛ                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³pÛ                     ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙpÛ                     sßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß                     ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p                                      ³p pWpipnpdpopwpsp pcprpepaptpepdp pwpiptphp ptphpep pSpcprpepepnp pDpepspipgpnp p³p                                      ³p pUptpiplpiptpyp pmpapyp pbpep ppplpapcpepdp papnpypwphpeprpep popnp ptphpep p p³p                                      ³p pspcprpepepnp pwpiptphp pepapspyp ptpop pupspep pCp pSptpaptpepmpepnptpsp.p p p³p                                      ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³p                                      ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³p                                      ³p p p p p p p p p p p p p p p p p p p p p p p p PRESS ANY KEY  p p³p                                      ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p³p                                      ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp                                                                                                                      ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                             pVpipdpepop pRpopuptpipnpepsp p                             º°°²²²º                                                                         º°°²²²º The cprint() and cput() functions allow you to easily display strings   º°°²²²º in color in your programs.  Just pass the string to be printed and the  º°°²²²º foreground and background colors.  Look at the example:                 º°°²²²º                                                                         º°°²²²º   c p r i n t ( " T h i s i s t h e s t r i n g t o b e d i s p l a y e d " , R E D , L T _ W H I T E ) ;         º°°²²²º                                                                         º°°²²²º The cput() function is similar to the cprint() function except that it  º°°²²²º is used to display single characters to the screen.                     º°°²²²º                                                                         º°°²²²º The cprint() function uses quick screen writes, so your displays will   º°°²²²º appear much more snappy that using printf() or _outtext() provided by   º°°²²²º Microsoft's standard and graphics library.                              º°°²²²º                                                                         º°°²²²º With cprint() and other formatting routines included with the C_SAW     º°°²²²º tools, you can quickly create sophisticated screens in any color.       º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                             pVpipdpepop pRpopuptpipnpepsp p                             º°°²²²º                                                                         º°°²²²º With the C_SAW tools, scrolling text vertically or horizontally is a    º°°²²²º snap.                                                                   º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º   ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p                               ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p º°°²²²º   ³p pCp_pSpApWp pTpopoplpsp p p³p                               ³p pPprpepspsp pFp ptpop pgpop pFpapsptp p³p º°°²²²º   ³p p pSpcprpoplplpipnpgp p p p³p                               ³p p p p p p p p p p p p p p p p p p p p p³p º°°²²²º   ³pCpapppapbpapbpiplpiptpipepsp³p                               ³p pPprpepspsp pSp ptpop pgpop pSplpopwp p³p º°°²²²º   ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp                               ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                             pVpipdpepop pRpopuptpipnpepsp p                             º°°²²²º                                                                         º°°²²²º  Another valuable routine called the setatt() function allows you to    º°°²²²º  change the foreground and/or background colors of a rectangular region º°°²²²º  of the screen.  This can be very useful for menu bars or other screen  º°°²²²º  enhancements.                                                          º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º        pBpapcpkpgprpopupnpdp p            pFpoprpepgprpopupnpdp p      pFpoprpepgprpopupnpdp p&p pBpapcpkpgprpopupnpdp p º°°²²²º                                                                         º°°²²²º    ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p    ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p    ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p    º°°²²²º    ³p p pDpepmpopnpsptprpaptpipopnp p p³p    ³p p pDpepmpopnpsptprpaptpipopnp p p³p    ³p p pDpepmpopnpsptprpaptpipopnp p p³p    º°°²²²º    ³p popfp ptphpep pspeptpaptptp(p)p p³p    ³p popfp ptphpep pspeptpaptptp(p)p p³p    ³p popfp ptphpep pspeptpaptptp(p)p p³p    º°°²²²º    ³p p p p pfpupnpcptpipopnp p p p p p³p    ³p p p p pfpupnpcptpipopnp p p p p p³p    ³p p p p pfpupnpcptpipopnp p p p p p³p    º°°²²²º    ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp    ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp    ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp    º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                             pVpipdpepop pRpopuptpipnpepsp p                             º°°²²²º                                                                         º°°²²²º  When you combine the flexible display and window routines with the     º°°²²²º  other enhanced video routines, you can quickly create professional     º°°²²²º  looking applications with a minimum of effort!                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿                  ³  Mailing List Manager                          ABC Corp.   ³                  ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´                  ³                                                            ³                  ³  Name...:                    ³                  ³                                                            ³                  ³  Address:                    ³                  ³                                                            ³                  ³  City...:  State:   Zipcode:      ³                  ³                                                            ³                  ³  Phone..: ()--        YTD Sales: 0.00      ³                  ³                                                            ³                  ³                                                            ³                  ³  Last Mail Date: //        Mail Code:            ³                  ³                                                            ³                  ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´                  ³  F1=Help    F2=Search    F6=Delete    F10=Save    ESC=Exit ³                  ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ                                                                                                                   pPprpepspsp papnpyp pKpepyp pwphpepnp prpepapdpyp.p.p.p                                                                                                                                                                                                                                                                                                                                                                                                                                                    ÚpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄp¿p                     ³p pWpiptphp ptphpep pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp,p pypopup pcpapnp pdpop pwpipnpdpopwpsp ptpopop!p p³p                     ³p pTphpepspep pwpipnpdpopwpsp paprpep pnpoptp pdpopnpep pipnp ptphpep ptprpapdpiptpipopnpaplp pwpapyp ptphpaptp p p³p                     ³p pap plpoptp popfp pwpipnpdpopwpipnpgp prpopuptpipnpepsp paprpep pdpopnpep.p p pYpopup pcprpepaptpep ptphpepspep p³p                     ³p pwpipnpdpopwpsp pupspipnpgp ptphpep pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp,p pjpupsptp papsp pypopup p p p p³p                     ³p pwpopuplpdp pipfp pypopup pwpeprpep pdpepspipgpnpipnpgp papnp pepnptpiprpep pspcprpepepnp.p p pOpnpcpep ptphpep p³p                     ³p pwpipnpdpopwp pipsp pcprpepaptpepdp,p pypopup pcpapnp pdpipsppplpapyp ptphpep pwpipnpdpopwp ptpop papnpyp p p p p³p                     ³p pppoprptpipopnp popfp ptphpep pspcprpepepnp.p p pWpiptphp ptphpep papipdp popfp papnpoptphpeprp pepapspyp ptpop p³p                     ³p pupspep pfpupnpcptpipopnp,p pypopup pcpapnp pepapspiplpyp popvpeprplpappp papnpdp prpepsptpoprpep pwpipnpdpopwpsp³p                     ³p pgpipvpipnpgp pypopup paplplp ptphpep pfplpepxpipbpiplpiptpyp pypopup pnpepepdp.p p p p p p p p p p p p p p p p p³p                     ³p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p Press any Key  p³p                     ÀpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÄpÙp                     ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»                            º  If you were to write a program to display this  º                            º  previous screen using only the tools that       º                            º  Microsoft provides with its C Compiler, your    º                            º  code might look something like the following    º                            º  sample:                                         º                            º                                                  º                            º                                  pHpiptp papnpyp pKpepyp p    º                            ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ                                                                                                                                                                                                                                                                                                                                                            ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                          pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp p                         º°°²²²º                                                                         º°°²²²º  In order to get a better idea of exactly how easy the Screen Design    º°°²²²º  Utility is easy to use, let's go into the program and create the       º°°²²²º  mailing list screen that you just saw.                                 º°°²²²º                                                                         º°°²²²º  As we proceed, you will actually be watching the Screen Design Utility º°°²²²º  in action.  We have simply replaced input from the keyboard to a macro º°°²²²º  type data file.                                                        º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                #include <graph.h>                                                              #include <stdio.h>                                                                                                                                              main ()                                                                                                                                                         {                                                                                 char buffer [81];                                                                                                                                               _setbkcolor (0L);              /*  set background color to black */             _clearscreen (_GCLEARSCREEN);  /*  clear screen */                                                                                                              _settextcolor (7);                                                              _setbkcolor (1L);                                                                                                                                               _settextposition (1, 1);                                                        _outtext ("ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿");                                                                                    _settextposition (2, 1);                                                        _outtext ("³  ");                                                               _settextcolor (14);                                                             _outtext ("Mailing List Manager                           ABC Corp.  ");        _settextcolor (7);                                                              _outtext ("³");                                                                                                                 pPprpepspsp pPpgpUppp poprp pPpgpDpnp ptpop pLpopopkp p                                                                                     _settextposition (3, 1);                                                        _outtext ("ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´");                                                                                    _settextposition (4, 1);                                                        _outtext ("³                                                            ³");                                                                                    _settextposition (5, 1);                                                        _outtext ("³  Name...: ");                                                      _settextcolor (15);                                                             _outtext ("                   ");                 _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                 _settextposition (6, 1);                                                        _outtext ("³                                                            ³");                                                                                    _settextposition (7, 1);                                                        _outtext ("³  Address: ");                                                      _settextcolor (15);                                                             _outtext ("                   ");                 _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                                                                 pPprpepspsp pPpgpUppp poprp pPpgpDpnp ptpop pLpopopkp p                                                                                                                                                                     _settextposition (8, 1);                                                        _outtext ("³                                                            ³");                                                                                    _settextposition (9, 1);                                                        _outtext ("³  City...: ");                                                      _settextcolor (15);                                                             _outtext (" ");                                               _settextcolor (7);                                                              _outtext ("State: ");                                                           _settextcolor (15);                                                             _outtext ("  ");                                                              _settextcolor (7);                                                              _outtext ("Zipcode: ");                                                         _settextcolor (15);                                                             _outtext ("     ");                                                        _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                 _settextposition (10, 1);                                                       _outtext ("³                                                            ³");                                                                                                                                                                                                                    pPprpepspsp pPpgpUppp poprp pPpgpDpnp ptpop pLpopopkp p                                                                                     _settextposition (11, 1);                                                       _outtext ("³  Phone..: ");                                                      _settextcolor (15);                                                             _outtext ("()--                                   ");                 _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                 _settextposition (12, 1);                                                       _outtext ("³                                                            ³");    _settextposition (13, 1);                                                       _outtext ("³                                                            ³");                                                                                    _settextposition (14, 1);                                                       _outtext ("³  Last Mail Date: ");                                               _settextcolor (15);                                                             _outtext ("//        ");                                                  _settextcolor (7);                                                              _outtext ("Mail Code: ");                                                       _settextcolor (15);                                                             _outtext ("           ");                                                   _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                                                                 pPprpepspsp pPpgpUppp poprp pPpgpDpnp ptpop pLpopopkp p                                                                                     _settextposition (15, 1);                                                       _outtext ("³                                                            ³");                                                                                    _settextposition (16, 1);                                                       _outtext ("ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´");                                                                                    _settextposition (17, 1);                                                       _outtext ("³ ");                                                                _settextcolor (15);                                                             _setbkcolor (4L);                                                               _outtext (" F1=Help ");                                                         _setbkcolor (1L);                                                               _outtext ("  ");                                                                _setbkcolor (4L);                                                               _outtext (" F2=Search ");                                                       _setbkcolor (1L);                                                               _outtext ("  ");                                                                _setbkcolor (4L);                                                               _outtext ( " F6=Delete ");                                                      _setbkcolor (1L);                                                               _outtext ("  ");                                                                _setbkcolor (4L);                                                               _outtext (" F10=Save ");                                                                                                        pPprpepspsp pPpgpUppp poprp pPpgpDpnp ptpop pLpopopkp p                                                                                                                                                                     _setbkcolor (1L);                                                               _outtext ("  ");                                                                _setbkcolor (4L);                                                               _outtext (" ESC=Exit ");                                                        _setbkcolor (1L);                                                               _settextcolor (7);                                                              _outtext ("³");                                                                                                                                                 _settextposition (18, 1);                                                       _outtext ("ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ");    ÉpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍp»p } ºp p pWHAT A PAIN! p pIpnp pcpopnptprpapsptp,p ptphpipsp pspapmpep pspcprpepepnp pwpapsp pcprpepaptpepdp pwpiptphp ptphpep p pºp   ºp p pSpcprpepepnp pDpepspipgpnp pUptpiplpiptpyp papnpdp piptp popnplpyp ptpopopkp pap pfpepwp psphpoprptp pmpipnpuptpepsp.p p pTphpep p pºp   ºp p pspcprpepepnp pipsp pspapvpepdp ptpop pap pfpiplpep papnpdp ptphpep popnplpyp pCp pcpopdpep prpepqpupiprpepdp ptpop pcpaplplp puppp pºp   ºp p ptphpep pspcprpepepnp plpopopkpsp plpipkpep:p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pºp  ºp p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pºp   ºp p p p p p pcphpaprp pspcprpepepnp p[p4p0p0p0p]p;p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pºp  ºp p p p p p pdpipsppp p(p"pdpepmpop.pspcprp"p,p p1p2p,p pspcprpepepnp)p;p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pºp      ºp p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pºp ºp p pTphpep pnpupmpbpeprp p1p2p prpeppprpepspepnptpsp ptphpep p1p2ptphp pspcprpepepnp pipnp ptphpep pfpiplpep.p p pYpopup pcpapnp p p p pºp ºp p psptpoprpep papsp pmpapnpyp pspcprpepepnpsp pipnp pap pfpiplpep papsp pypopup pwpipsphp.p p p p p p p p p p p p p p p p p p p p p p pºp  ºp p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p Press any Key  pºp ÈpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍpÍp¼p                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                           pSptprpipnpgp pMpapnpipppuplpaptpipopnp p                          º°°²²²º                                                                         º°°²²²º                                                                         º°°²²²º  The C language is a very powerful language indeed, but by itself, it   º°°²²²º  lacks some of the robust functions found in other high level languages.º°°²²²º  If you miss such functions as the MID$, RIGHT$ and LEFT$ functions     º°°²²²º  available to you in BASIC, then you can relax because the C_SAW Tools  º°°²²²º  has them.                                                              º°°²²²º                                                                         º°°²²²º  We have included many other string manipulation routines that give you º°°²²²º  the ability to manipulate strings anyway you wish.  Such functions     º°°²²²º  include fuctions to trim leading or trailing spaces or other charactersº°°²²²º  from the beginning or ending of a string or both;  A function to swap  º°°²²²º  two strings; Functions to convert strings to upper case, lower case or º°°²²²º  just the first letter of each word to upper case.  There are many      º°°²²²º  others as well.                                                        º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                          pMpipspcpeplplpapnpepopupsp pFpupnpcptpipopnpsp p                       º°°²²²º                                                                         º°°²²²º  To wrap up the C_SAW Tools, we have included several other miscellan-  º°°²²²º  eous functions that are very useful.                                   º°°²²²º                                                                         º°°²²²º  The DOS Shell.  The dos_shell() function allows you to provide a       º°°²²²º  temporary exit from any program you write.  The dos_shell() function   º°°²²²º  takes care of saving the screen and remembers which drive and directoryº°°²²²º  your in automatically, so when you return to your application from DOS º°°²²²º  it's exactly as you left it.                                           º°°²²²º                                                                         º°°²²²º  The C_SAW Tools provides you with timing routines that help you with   º°°²²²º  time critical applications.  Elapsed time functions and pause functionsº°°²²²º  allow you to write applications that are independant of CPU speed.     º°°²²²º                                                                         º°°²²²º  Enhanced keyboard handling, hex to integer conversion and julian date  º°°²²²º  routines are among the other functions provided.                       º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»º  Vpipdpepop pFpupnpcptpipopnpsp                                                             ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  cprint()   Prints a string in specified colors.                             ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  cput()     Prints a character in specified colors.                          ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  cur_type() Adjusts the size of the cursor.                                  ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  disp()     Displays a screen file.                                          ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  dispw()    Displays a window from a screen file.                            ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  display_type() Returns type of display (color or monochrome)                ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  horiz()    Scroll a line horizontally.                                      ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  locate()   Position the cursor.                                             ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  scroll()   Scroll a region of the screen vertically.                        ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  setatt()   Set the attributes of a region of the screen.                    ºº                                                                pPprpepspsp papnpyp pKpepyp pºÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ                                                                                ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»º  Mpipspcpeplplpapnpepopupsp pFpupnpcptpipopnpsp                                                     ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĺº  day_of_week()  Returns the day of week.                                     ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  dtoj()         Converts date to julian.                                     ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  jtod()         Converts julian to date.                                     ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  dos_shell()    Allows temporary exit to dos.                                ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  parse_file()   Parses a pathname into drive, directory, file and extension. ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  pause()        Pauses for n number of seconds.                              ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  timer()        Returns number of seconds since midnight.                    ºÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶº  There are other functions as well and the list of functions just keeps      ºº  growing.                                                                    ºº                                                                              ºº                                                                              ºº                                                                              ºº                                                                pPprpepspsp papnpyp pKpepyp pºÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ                                                                                  ÚÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄ¿    ³ø³  The C_SAW tools may be purchased for just $49.50 plus shipping.     ³ø³    ³ ³  You may purchase the C_SAW Tools by calling Falcon Software's       ³ ³    ³ø³  order line at (801)-544-1312 or you may call our BBS and order the  ³ø³    ³ ³  software directly with your computer.  (BBS Number: (801)-544-3280. ³ ³    ³ø³  Or you may print out and send in the completed order form from the  ³ø³    ³ ³  the file included: order.frm.  (C.O.D. Visa, Master Card accepted.) ³ ³    ³ø³                                                                      ³ø³    ³ ³  What you get is the C_SAW tools library which supports the SMALL,   ³ ³    ³ø³  MEDIUM, COMPACT and LARGE memory models, the Screen Design Utility  ³ø³    ³ ³  and the source code for all functions and programs.                 ³ ³    ³ø³                                                                      ³ø³    ³ ³  Currently the C compilers supported are: Microsoft 5.x and Quick C  ³ ³    ³ø³                                                                      ³ø³    ³ ³  As a registered owner of a C_SAW tools license you will be informed ³ ³    ³ø³  on a regular basis of all enhancements and updates to the software. ³ø³    ³ ³                                                                      ³ ³    ³ø³  Thanks for looking at the C_SAW Tools Demo!!!!!!                    ³ø³    ÀÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÙ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                           pDpaptpap pEpnptprpyp pRpopuptpipnpepsp p                          º°°²²²º                                                                         º°°²²²º  When you combine the Screen Design Utility and the powerful video      º°°²²²º  routines, then add the data entry routines provided with the C_SAW     º°°²²²º  Tools, you have a complete set of tools for building sophisticated     º°°²²²º  and professional applications.                                         º°°²²²º                                                                         º°°²²²º  The C_SAW Tools includes two powerful input routines.  One is designed º°°²²²º  for numeric input, particularly dollar amounts and the other is        º°°²²²º  designed for various types of string input.  The string input routine  º°°²²²º  allows you to format the input for almost any type of data from dates  º°°²²²º  to phone numbers.                                                      º°°²²²º                                                                         º°°²²²º  Let's take a look at an example of some of the versatility in the inputº°°²²²º  routines.  We will use the mailing list screen that we created earlier º°°²²²º  for input.                                                             º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²                                                                                ²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»²²²²²º                           pDpaptpap pEpnptprpyp pRpopuptpipnpepsp p                          º°°²²²º                                                                         º°°²²²º  As you can see from the previous example, providing versatile yet      º°°²²²º  bullet proof data entry screens is a snap when you use the C_SAW Tools.º°°²²²º                                                                         º°°²²²º  Some of the features of the input routines include:                    º°°²²²º                                                                         º°°²²²º    Field length control.                                               º°°²²²º    Option to force entry to upper case.                                º°°²²²º    Password entry option.                                              º°°²²²º    Definable masks (formatting).                                       º°°²²²º    Optional comments.                                                  º°°²²²º                                                                         º°°²²²º  The previous screen and data entry was coded in just over 50 lines of  º°°²²²º  C code using the C_SAW Tools.  This represents a substantial reduction º°°²²²º  in the amount of time and code involved in developing applications.    º°°²²²º                                                                         º°°²²²º                                                         pPpRpEpSpSp pApNpYp pKpEpYp p  º°°²²²º                                                                         º°°²²²ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ°°²²²²²°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²