home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS 1992 December / simtel1292_SIMTEL_1292_Walnut_Creek.iso / msdos / clipper / funcky.arc / VIEW.DOC next >
Text File  |  1988-11-13  |  48KB  |  637 lines

  1.           FUNCky Demo Program Copyright dLESKO ASSOCIATES 1988. All Rights
  2.           Reserved. No part of this program may be distributed for any
  3.           purpose other than to demonstrate the capabilities of the FUNCky
  4.           Library for Clipper
  5.           
  6.           View is a sample program written using functions from the FUNCky
  7.           library for Clipper that demonstrates usage of the mouse
  8.           functions, programming for multiple video modes, font loading and
  9.           in general the basic principles when creating dropdown tear off
  10.           menus similar to the Macintosh interface. With view you can view
  11.           text files in moveable and resizeable windows. View supports
  12.           almost every video mode you can throw at it (except graphics
  13.           modes) with no special programming. If you have an EGA or VGA and
  14.           your adaptor supports 43, 50 or 60 line mode, View will love it.
  15.           If you can go up to 132 columns, you can also see how Clipper can
  16.           now work in those modes as well.
  17.           
  18.           To start View, simply type View and optionally the drive letter
  19.           of the drive you wish to view text files on. As in the sequence:
  20.           
  21.                View C: <return>
  22.           
  23.           Once View has started, a status line on the bottom of the screen
  24.           displays the currently selected drive, path and filename. To view
  25.           a file, select the directory you want to view, then select the
  26.           file, then select view from the menu and a window will open
  27.           displaying the contents of the text file. You can bring up
  28.           multiple views of the same text file by pressing F1 after you
  29.           display the first view window. The maximum
  30.           number of windows you can open is 4. Use the mouse to move the
  31.           windows to make room for the new window before you open a new
  32.           window since only the top window is active.
  33.           
  34.           The various aspects of the mouse functions can be demonstrated as
  35.           well. If you have a mouse, you can click on any option to pull
  36.           down the sub menu. To select a sub menu item, just click on that
  37.           item and it is selected. The idea of tear off drop menus is
  38.           accomplished by placing the mouse cursor in the middle of the sub
  39.           menu and pressing the right mouse button. While holding it down
  40.           you can drag the sub menu anywhere on the screen you like. You
  41.           can also re-size the drop down menu by placing the mouse cursor
  42.           on the right border of the box and while holding down the right
  43.           mouse button, drag the box's border to the right or left. To
  44.           display more lines of the drop down menu, place the mouse cursor
  45.           on the bottom edge of the box border and while holding down the
  46.           right mouse button, pull the box border up and down. Another
  47.           type of moveable window is available. In the mode window you
  48.           can specify Macintosh like or normal. Macintosh windows move around
  49.           a little faster since only the frame of the window is drawn as
  50.           you move it. The entire window is repainted only when you release
  51.           a key or mouse button.
  52.           
  53.           You can also use the mouse to emulate all the keyboard like
  54.           control keys. To scroll up the menu, click the left mouse button
  55.           while the mouse cursor is on the up arrow in the control panel.
  56.           To scroll down, click the left button while the mouse cursor is
  57.           on the down arrow. To page up and page down, click the right
  58.           mouse button on the up or down arrow. You can also pan the inner
  59.           contents of the menu if the contents exceed the width of the
  60.           menu. Just click the left or right button on the left and right
  61.           arrows in the control panel of the menu. The file view window
  62.           also emulates these same procedures, except that the panning
  63.           arrows move the contents of the text file in 8 column increments.
  64.           
  65.           If you don't have a mouse you can still emulate all the above
  66.           outlined options using the keyboard. Press the scroll lock key
  67.           and then use the arrow keys on the numeric keypad to move the
  68.           drop down menu, or the file view window to the position you like
  69.           on the screen. When it is in place, release the scroll lock key.
  70.           To expand the drop down menus, use the left shift key and the
  71.           arrow keys on the numeric keypad to expand or grow the dropdown.
  72.           the left and right arrow keys expand the box right and left while
  73.           the up and down arrow keys pull up or down the bottom of the
  74.           dropdown. To select menu items, you can scroll the highlight to
  75.           any item you want and press return to select it.
  76.           
  77.           That's about all there is to view. If you have an EGA or VGA
  78.           monitor, you can check out the various screen modes and fonts in
  79.           the MODE option on the main menu. Study the VIEW.PRG file to see
  80.           how it was done. Note that you cannot compile the source code if
  81.           you do not have the FUNCky Library for Clipper. The following
  82.           text outlines some of the capabilites of the library. A listing
  83.           of the table of contents list the major functions in the library.
  84.           Give it a looksee, if you like it I guess I'll be speaking to you
  85.           soon.....
  86.           
  87.           - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  88.           What is FUNCky you ask? - well, I think it's the neatest library
  89.           to ever come out for Clipper.....
  90.           
  91.           With FUNCky you have the largest array of functions ever
  92.           assembled in one place. You get top quality documentation on over
  93.           400 functions for Clipper. There are also around 30 or so re-
  94.           written Clipper functions. They have been written in tighter
  95.           faster code. With greater speed so you get increased options.
  96.           Like with FILE IO. The low level file funcitons in Clipper have
  97.           been completely re-written so that you can now do things like
  98.           store your menu options in text files that you can edit inside
  99.           the appplication using memoedit(). You can create help systems
  100.           that display text files in windows, use the fantastic flocate()
  101.           function to locate text strings in files, then use the speedy
  102.           freadline() to read the lines of text into a string. You could
  103.           use afileread() to load lines of text from a file into arrays.
  104.           All the low level file functions of course interact directly to
  105.           with Clipper's own ferror() function.
  106.           
  107.           You also get mouse support, not little dweeby functions to read a
  108.           mouse button or display a mouse cursor, but real mouse support.
  109.           use mx_choice() to emulate achoice() with scroll bars, a control
  110.           panel, resizing, dynamically expanding windows, grab the window
  111.           and move it. Display DBF files like dbedit() in the same type of
  112.           dynamic windows. Use the mouse to select records or scroll the
  113.           database. Grab the window and move it so you can pop up several
  114.           DBF scroll windows at once!, use mx_view() to view text files in
  115.           the same type of moveable-resizeable windows. Create popup,
  116.           dropdown, tear off, moveable, resizeable menus, etc. etc. etc.
  117.           All in all around 70 mouse functions to do almost anything you
  118.           want,
  119.           
  120.           You also get extensive video support. You can use as many video
  121.           pages as your adaptor supports, create virtual screens and
  122.           windows in memory, display menus on the monochrome screen and
  123.           color screen at the same time (if you have two monitors), write
  124.           programs in 43 and 50 line mode on your EGA or VGA adaptor with
  125.           full support of gets / menu to / savescreen() etc... Get 64
  126.           colors on EGA and VGA monitors, use the print() function to write
  127.           strings to the screen 50% faster than @ ... say. Use all the
  128.           regular Clipper functions like @ ... box, @ ... say etc. inside
  129.           virtual screen buffers that are not displayed until you want
  130.           them. This negates the need for complex windowing functions.
  131.           
  132.           You can also execute functions during wait states like menu to or
  133.           READS using the great timeout() function!. Intercept and remap
  134.           keystrokes with the cool onkey() function!. Create neato sound
  135.           effects with sound()!. Load different FONTS into your EGA and VGA
  136.           adaptor!, display 2 fonts at the same time!, get 16 background
  137.           colors where you used to have only 8!, get access to the F11 and
  138.           F12 keys with built in extended keyboard support!, Whew!... Have
  139.           to catch my breath...Plus you get all the usual functions you
  140.           expect from a library by dLESKO ASSOCIATES.
  141.           
  142.           Now, the price. It's three tiered. First, list is $195 direct
  143.           from dLESKO ASSOCIATES at 201.435.8401. Next is the user group
  144.           discount. If you are a member of a Clipper user group, you can
  145.           get FUNCky for $149. Last is the upgrade policy. If you have IDL,
  146.           Tom Rettig's library or Boatswains Mate, upgrade to FUNCky before
  147.           Jan 31, 1989 for only $49!!!. If you are not a member of a Clipper
  148.           user group, now is the time to join! save money on your membership
  149.           dues, and spread the word. Have you user group leader call us
  150.           for more information on the user group FUNCky promotion.
  151.           You can call during the day if you want more information. By the
  152.           way, I am no longer affiliated with IDL. Integrated Development
  153.           Corp. now owns all rights to that product. If you own IDL CALL ME
  154.           AND UPGRADE...
  155.           
  156.           Dirk Lesko - dLESKO ASSOCIATES.
  157.           
  158.           
  159.           
  160.           The following is the table of contents for the FUNCky Library for
  161.           Clipper:
  162.           
  163.           aaverage() - get the average of all numbers in an array
  164.           addzip() - set new zip code ranges for iszip(), state()
  165.           afileread() - load a text file into an array                               
  166.           afilewrite() - write an array of strings to a text file
  167.           alen() - get length of array without undefined elements
  168.           alltrimlen() - get length of string as if alltrimmed()                     
  169.           althandle() - get/set the SET ALTERNATE TO file handle                     
  170.           amacprint() - macro expand and print array contents                        
  171.           amax() - find maximum value in an array                                    
  172.           amaxn() - get element number of maximum value in array                     
  173.           amaxstr() - get the longest string in a character array
  174.           amaxstrlen() - get longest string length in array                          
  175.           amaxstrn() - get element number of longest string in array
  176.           amin() - find minimum value in an array                                    
  177.           aminn() - get element number of minimum value in array                     
  178.           aminstr() - get the shortest string in a character array
  179.           aminstrlen() - get shortest string length in array                         
  180.           aminstrn() - get element # of shortest string in array                     
  181.           and() - bitwise and of two numbers                                         
  182.           areplicate() - replicate a string to the screen, fast                      
  183.           argc() - get number of command line arguments                              
  184.           argv() - get a command line argument as a string                           
  185.           arrayprint() - print the elements of an array to printer
  186.           asciitoebc() - convert an ascii string to EBCDIC                           
  187.           atest() - check if a character matches any array elements
  188.           atestn() - check if a number is in a numeric array                         
  189.           atlast() - get position of last occurrence of a character                  
  190.           atnext() - get <nth> occurrence of a character in a string
  191.           atotal() - get the total of all the numbers in an array
  192.           
  193.           beep() - cause the speaker to beep                                         
  194.           bin2num() - convert 16/8 bit binary string to integer                      
  195.           bitstrip() - strip high bits from string                                   
  196.           blinkbit() - turn blink on/off, get 16 background color
  197.           border() - set the border color on CGA/EGA/VGA                             
  198.           box() - draw a box with optional shadow                                    
  199.           byte2bin() - convert byte value to 8 bit binary string                     
  200.           
  201.           capfirst() - capitalize first character, lowercase rest
  202.           capitalize() - capitalize first letter of each word                        
  203.           capslock() - get or set the caps lock state                                
  204.           capstext() - set string to display if caps lock is on                      
  205.           ccast() - cast any variable type to a character type                       
  206.           center() - add leading spaces to center in <nn> width                      
  207.           chdir() - change directory                                                 
  208.           checkdate() - check if date string is valid                                
  209.           checktime() - check if time string is valid                                
  210.           chrcount() - find number of times a char occurs in string
  211.           chrfound() - test if all chars in str1 are in str2                         
  212.           chrswap() - swap characters in a string                                    
  213.           clock12() - display a 12 hour ampm format clock                            
  214.           clock24() - display a 24 hour military format clock                        
  215.           cls() - clear the entire screen to specified attribute                     
  216.           clusters() - get the number of clusters on a drive                         
  217.           clustsize() - get disks cluster size in bytes                              
  218.           coldboot() - perform a cold boot of the computer                           
  219.           color attributes - attribute table for video functions                     
  220.           color() - set video output to the color adaptor                            
  221.           comcheck() - test if character available from comm port
  222.           comin() - input a character from the serial port                           
  223.           cominit() - initialize the serial port                                     
  224.           comma() - insert commas in a string of numbers                             
  225.           command() - get the command line as a string                               
  226.           comoff() - turn off DTR signal to stop receiving data                      
  227.           comon() - turn on handshaking signals DTR and RTS                          
  228.           comout() - output a string to the serial port                              
  229.           comreset() - reset comm ports to normal after comset()                     
  230.           comset() - set comm ports to different port values                         
  231.           comswap() - swap comm ports com1 and com2                                  
  232.           cputype() - get the type of CPU the machine has                            
  233.           crash() - lock up the entire system, forcing reboot                        
  234.           csrbot() - get bottom scan line cursor value                               
  235.           csrput() - place cursor at specified row/column                            
  236.           csron() - turn the cursor on                                               
  237.           csrset() - set bottom and top scan line values                             
  238.           csrtop() - get top scan line cursor value                                  
  239.           curdir() - get the current directory name                                  
  240.           curdrive() - get the logged drive letter                                   
  241.           
  242.           datetype() - get current SET DATE TO setting                               
  243.           dec2hex() - convert decimal value to hexadecimal string
  244.           decimals() - get SET DECIMALS value, # decimals in var                     
  245.           decrypt() - unencrypt an encrypted string                                  
  246.           default() - get SET DEFAULT to setting                                     
  247.           delimiters() - get the current delimiters in use                           
  248.           delvolume() - delete a disks volume label                                  
  249.           disksize() - get a disks size in bytes                                     
  250.           diskspace() - get the amount of disk space left                            
  251.           disk() - restrict access to floppy disks                                   
  252.           disktoscr() - restore a screen from a disk file                            
  253.           dosmem() - get amount of DOS memory installed                              
  254.           dosvers() - get DOS version number as an integer                           
  255.           drives() - get number of valid drives                                      
  256.           drivestr() - get a a string of the available drives                        
  257.           dtow() - convert dates to words, format month day, year
  258.           
  259.           ebctoascii() - convert an EBCDIC string to ascii                           
  260.           egamem() - get amount of much EGA/VGA memory in system                     
  261.           encrypt() - encrypt a string so it cannot be read                          
  262.           enhanced() - get/set enhanced color as integer from Clipper
  263.           execute() - execute a function <nn> times                                  
  264.           exitkeys() - define exit keys allowed to exit reads()                      
  265.           expmem() - get amount of expanded memory available                         
  266.           extmem() - get amount of extended memory available                         
  267.           
  268.           fadvance() - advance to the next line of text in a file
  269.           fbof() - see if file pointer is at beginning of file                       
  270.           fbol() - rewind file pointer to start of current line                      
  271.           fbot() - go to end of file                                                 
  272.           fchanged() - see if archive bit has been set                               
  273.           fcopy() - copy a file                                                      
  274.           fcopybyte() - copy <nn> bytes from <file 1> to <file 2>
  275.           fcreatef() - DOS 3.00 create file function                                 
  276.           feof() - see if the file pointer is at the end of file                     
  277.           ferase() - erase a file                                                    
  278.           ferror() - test for a DOS error after a file function                      
  279.           fgetdate() - get a files date stamp                                        
  280.           fgettime() - get a files time stamp                                        
  281.           fgetattr() - get a files attribute                                         
  282.           fhide() - change files attribute to hidden                                 
  283.           filesize() - get the size of a file                                        
  284.           filecount() - count number of matching files                               
  285.           findattr() - get file's attribute from findfirst/next()
  286.           findfirst() - find first matching file                                     
  287.           findnext() - find next matching file                                       
  288.           finddate() - get file's date from last findfirst/next()
  289.           findsize() - get file's size from last findfirst/next()
  290.           findtime() - get file's time from last findfirst/next()
  291.           fkey() - get string assigned to a function key                             
  292.           FLdefine() - define which EGA/VGA font table to use                        
  293.           flen() - length of a file associated with a handle                         
  294.           flinecount() - count how many lines of text are in a file
  295.           FLoad() - load a font from disk into EGA/VGA memory                        
  296.           flocate() - locate text in a text file                                     
  297.           FLreset() - reset the EGA/VGA to it's default font+mode
  298.           FONTS - load new fonts into EGA/VGA adaptor memory                         
  299.           fprotect() - change files attributes to read only                          
  300.           fre() - get amount of free DOS memory available                            
  301.           freadbyte() - read in 1 byte from a file                                   
  302.           freadint() - read in an integer from a file                                
  303.           freadlong() - read in a long integer from a file                           
  304.           freadline() - read in one line from a file                                 
  305.           frename() - rename a file                                                  
  306.           freplicate() - replicate a string to a file                                
  307.           frewind() - rewind file pointer to previous line of text
  308.           fsetattr() - set a files attribute                                         
  309.           fsetdate() - change a files date stamp                                     
  310.           fsettime() - set a files time stamp                                        
  311.           fstrcount() - how many times a string appears in a file
  312.           ftell() - get current file pointer position                                
  313.           ftop() - go to the beginning of file                                       
  314.           funhide() - change files attribute from hidden to norma
  315.           funprotect() - change files attribute to normal                            
  316.           fwritebyte() - write 1 byte to a file                                      
  317.           fwriteint() - write an integer to a file                                   
  318.           fwritelong() - write a long integer to a file                              
  319.           fwriteline() - write one line to a file                                    
  320.           f_header() - get the header size in a DBF file                             
  321.           f_isdbf() - check if a file is a dBASE III DBF file                        
  322.           f_lupdate() - get date of the last update in a DBF file
  323.           f_ndxkey() - get the index expression of an index file                     
  324.           f_recsize() - get the record size in a DBF file                            
  325.           
  326.           getattr() - get attribute from specified screen location
  327.           getpage() - get video page currently being displayed                       
  328.           getvolume() - get the volume label of specified disk                       
  329.           
  330.           handles() - get number of available file handles                           
  331.           hex2dec() - convert a hexadecimal string to an integer                     
  332.           
  333.           initscreen() - initialize a virtual screen in memory                       
  334.           inp() - input from a port                                                  
  335.           insert() - get/set the insert key status                                   
  336.           instext() - set string to display if insert is on                          
  337.           interrupt() - execute any software/hardware interrupt                      
  338.           isalpha() - check if characters are alpha characters                       
  339.           isascii() - check if characters in string are ascii                        
  340.           isbutton() - check if a mouse button has been pressed                      
  341.           iscntrl() - check if characters are control characters                     
  342.           iscom() - check if comm port is attached to the system                     
  343.           isdir() - check if directory is valid                                      
  344.           isdisk() - check if a disk drive is a valid drive                          
  345.           isdigit() - check if characters are numeric                                
  346.           isdrive() - check if a drive is ready for access                           
  347.           isems() - check if expanded memory manager is installed
  348.           isextended() - see if BIOS supports enhanced keyboard                      
  349.           isfixed() - check if drive is a fixed disk                                 
  350.           isfile() - check if a file exists                                          
  351.           isfloppy() - check if disk is a floppy disk                                
  352.           ishandle() - see if a handle is available for opening                      
  353.           isindex() - check if an index is open in the current area
  354.           iskeyset() - check if a key is assigned to SET KEY TO                      
  355.           islastday() - check if date is the last day of month                       
  356.           isleap() - check if a year or date is a leap year                          
  357.           islower() - check if characters are lowercase                              
  358.           islpt() - verify that an lpt port is in the system                         
  359.           ismouse() - check if mouse is installed                                    
  360.           isnum() - check if characters in string are numbers                        
  361.           isprint() - check if characters are printable                              
  362.           isprinter() - check if printer is online and ready                         
  363.           isqueue() - see if the DOS print queue is installed                        
  364.           isspace() - check if characters are white space                            
  365.           isstate() - validate two digit state abbreviations                         
  366.           isupper() - check if characters are uppercase                              
  367.           isxdigit() - check if characters are hex characters                        
  368.           iszip() - check that a zip code is in specified state                      
  369.           
  370.           kbdstat() - get status of shift/num/caps/scroll/alt key
  371.           key() - turn keyboard on and off                                           
  372.           keystat() - display status of numlock, caps lock etc.                      
  373.           
  374.           lastday() - get the last day in a month                                    
  375.           lastdrive() - get lastdrive setting in config.sys                          
  376.           leadchar() - replace leading spaces with a character                       
  377.           ljust() - left justify a string                                            
  378.           lprint() - print text to the printer                                       
  379.           lprintline() - print text to the printer append cr+lf                      
  380.           lptreset() - reset lpt ports to normal after lptset()                      
  381.           lptset() - set lpt ports to different port values                          
  382.           lptswap() - swap printer ports lpt1 and lpt2                               
  383.           ltrimlen() - get length of string as if ltrimmed()                         
  384.           
  385.           margin() - get current SET MARGIN TO setting                               
  386.           maxcol() - get the maximum allowable column number                         
  387.           maxhandles() - number of handles allocated to program                      
  388.           maxrow() - get the maximum allowable row number                            
  389.           mediatype() - get disk media descriptor byte                               
  390.           mkdir() - create a subdirectory                                            
  391.           mono() - set video output to the mono adaptor                              
  392.           montype() - get type of monitor in use (for VGA/MCGA)                      
  393.           mouse() - turn mouse support on and off                                    
  394.           mousetrap() - use mouse to stuff keys into keyboard buffer
  395.           mx_choice() - emulate achoice() with mouse support                         
  396.           mx_dbfview() - display DBF fields in resizeable window                     
  397.           mx_popdir() - popup a resizeable subdirectory pick list
  398.           mx_popfile() - popup a resizeable file pick list                           
  399.           mx_view() - view a text file in a resizeable window                        
  400.           m_aregion() - check if mouse cursor is in specified regions
  401.           m_buttons() - get number of buttons on the mouse                           
  402.           m_choice() - emulate achoice() with mouse support                          
  403.           m_clicks() - set how many button presses needed                            
  404.           m_col() - get current mouse cursor column position                         
  405.           m_csroff() - turn mouse cursor off                                         
  406.           m_csron() - turn mouse cursor on                                           
  407.           m_csrput() - place mouse cursor at coordinates X,Y                         
  408.           m_data() - send mouse messages to the mouse functions                      
  409.           m_datarest() - restore Mouse Message Area from a memvar
  410.           m_datasave() - save Mouse Message Area to a memvar                         
  411.           m_dbfview() - display DBF fields in a pick window                          
  412.           m_display() - display a centered message on the screen                     
  413.           m_getpage() - get video page mouse cursor is displayed
  414.           m_hmickeys() - get horizontal mickey count                                 
  415.           m_inbutton() - wait for a mouse button to be pressed                       
  416.           m_incol() - mouse cursor column at last button press                       
  417.           m_inrow() - mouse cursor row at last button press                          
  418.           m_iscursor() - check if mouse cursor is on or off                          
  419.           m_maxcol() - set max/min columns that mouse can access                     
  420.           m_maxrow() - set max/min rows that mouse can access                        
  421.           m_menu() - create drop down menus                                          
  422.           m_message() - display a message on the screen                              
  423.           m_mickeys() - set the maximum and minimum mickey count                     
  424.           m_movement() - find out the direction mouse is moving                      
  425.           m_pen() - turn light pen emulation on or off                               
  426.           m_position() - get mouse row and column coordinates                        
  427.           m_popdir() - popup a subdirectory pick list                                
  428.           m_popfile() - popup a file pick list                                       
  429.           m_prompt() - emulate @ .. prompt with mouse support                        
  430.           m_query() - place a Yes/No query on the screen                             
  431.           m_region() - check if mouse cursor is in specified region
  432.           m_release() - wait for a mouse button to be released                       
  433.           m_reset() - reset mouse settings to default states                         
  434.           m_restore() - restore mouse settings that were m_saved()
  435.           m_row() - get current mouse cursor row position                            
  436.           m_save() - save the current mouse settings to a memvar                     
  437.           m_setpage() - set page that mouse cursor is displayed on
  438.           m_speed() - set threshold to double mouse cursor speed                     
  439.           m_squeak() - create tones that the mouse functions use                     
  440.           m_trapget() - get key value assigned by mousetrap()                        
  441.           m_trapfree() - release mousetrap() without resetting it
  442.           m_trapnew() - resets all mousetrap events                                  
  443.           m_traprest() - restore your mousetrap settings                             
  444.           m_trapsave() - save your mousetrap settings                                
  445.           m_trapset() - activate the mousetrap()                                     
  446.           m_view() - view a text file in a window                                    
  447.           m_vmickeys() - get vertical mickey count                                   
  448.           
  449.           nap() - pause program execution for <nn> clock ticks                       
  450.           ndptype() - get type of numeric coprocessor installed                      
  451.           nexthandle() - find out the next available handle numbe
  452.           nlen() - get the length of any variable type                               
  453.           nstuff() - stuff integer key value into Clipper's buffer
  454.           num2day() - convert number to it's corresponding day                       
  455.           num2month() - convert number to corresponding month                        
  456.           num2bin() - convert an integer to 16 bit binary string                     
  457.           numlock() - get or set the num lock state                                  
  458.           numtext() - set string to display if num lock is on                        
  459.           nupper() - convert inkey() value to uppercase integer                      
  460.           
  461.           off() - get the offset address of a string variable                        
  462.           ondo() - execute function/expression <nn> in list                          
  463.           onkey() - execute a function on every keypress                             
  464.           or() - bitwise or of two numbers                                           
  465.           outp() - output a value to a port                                          
  466.           
  467.           palette() - access 64 colors on EGA and VGA adaptors                       
  468.           park() - position the hard disk heads on the last sector
  469.           path() - get the current SET PATH TO setting                               
  470.           peek() - get a value from a memory location                                
  471.           peekstr() - read string from specified memory location                     
  472.           poke() - poke a value into a memory location                               
  473.           print() - print a character string with attribute                          
  474.           prnhandle() - get/set the PRINTER handle                                   
  475.           prnreset() - initialize printer to default settings                        
  476.           prnstatus() - get printer status, out of paper, etc.                       
  477.           program() - get the name of the program that is running
  478.           prtscr() - print the screen to the printer                                 
  479.           
  480.           q_cancel() - cancel all printing by the print queue                        
  481.           q_delete() - delete a file from the print queue                            
  482.           q_file() - get file currently being printed in queue                       
  483.           q_hold() - temporarily pauses queued printing                              
  484.           q_restart() - restart queued printing after a q_hold()                     
  485.           q_status() - check printer queue for errors                                
  486.           q_submit() - load file into print queue for printing                       
  487.           
  488.           rand() - generate consistent random numbers                                
  489.           random() - generate a random number                                        
  490.           reads() - get user input similar to a get                                  
  491.           readh() - get user input right to left for Hebrew data                     
  492.           readscreen() - read character strings off the screen                       
  493.           removeable() - see if a disk contains removeable media                     
  494.           restscreen() - restore a screen from a memory variable                     
  495.           reverse() - reverse a string                                               
  496.           rjust() - right justify a string in <nn> spaces                            
  497.           rmdir() - remove a subdirectory                                            
  498.           rol() - bitwise rotate left of a number                                    
  499.           roloc() - reverse the attributes of a color variable                       
  500.           romdate() - get the rom date of your computer's BIOS                       
  501.           ror() - bitwise rotate right of a number                                   
  502.           
  503.           savescreen() - save a screen to a memory variable                          
  504.           scrltext() - set string to display if scroll lock is on
  505.           scrlock() - get or set the scroll lock state                               
  506.           scroll() - scroll a portion of the screen up or down                       
  507.           scrtodisk() - save a screen to a disk file                                 
  508.           sectors() - get the number of sectors per cluster                          
  509.           sectorsize() - get the size of a disk sector                               
  510.           seed() - specify seed value for random()                                   
  511.           seg() - get the segment address of a string variable                       
  512.           setattr() - set screen attributes                                          
  513.           setdrive() - set the current logged drive                                  
  514.           setdate() - set the computers internal date                                
  515.           sethandles() - open up to 255 file handles                                 
  516.           setkey() - get procedure assigned to a key via SET KEY
  517.           setlogical() - set the next logical drive you will use                     
  518.           setmode() - set a new video mode                                           
  519.           setpage() - set screen page to use to display output                       
  520.           setscreen() - set screen output to virtual pages                           
  521.           setsnow() - set snow control checking on or off                            
  522.           settime() - set the computers internal clock                               
  523.           setvolume() - set volume label                                             
  524.           shift() - shift a portion of the screen left or right                      
  525.           shl() - bitwise shift left of a number                                     
  526.           shr() - bitwise shift right of a number                                    
  527.           soundex() - convert a string to it's phonetic complement
  528.           sound() - create arcade and space sound effects                            
  529.           srand() - specify seed value for rand()                                    
  530.           standard() - get/set foreground color as an integer                        
  531.           status() - get status of Clipper's various set commands
  532.           state() - get the 2 digit state abbr. based on zipcode                     
  533.           statecode() - get state name from 2 digit code                             
  534.           stdin() - get string from stdin()                                          
  535.           stdout() - output a string to the standard output                          
  536.           stratnext() - get position of a substring in a string                      
  537.           strcenter() - center a string within <nn> spaces                           
  538.           strcount() - count # of times str1 appears in str2                         
  539.           strexpand() - insert <nn> spaces between each char                         
  540.           strextract() - extract a string between two delimiters                     
  541.           strstuff() - stuff characters into Clipper's buffer                        
  542.           swap() - swap the contents of two variables                                
  543.           systype() - get system id byte, identifies computer                        
  544.           
  545.           tabexpand() - expand tabs to correct tab stops                             
  546.           test() - test bits in a number                                             
  547.           timeout() - specify function to execute during wait states
  548.           timeh() - get time string including hundredths/secs                        
  549.           trailchar() - replace trailing spaces with a character                     
  550.           trimlen() - get length of string as if trimmed()                           
  551.           trimpunct() - trim non-alpha characters from a string                      
  552.           turbo() - get an extra 4-5% speed from your computer                       
  553.           typeahead() - get size of the typeahead buffer                             
  554.           
  555.           unclock12() - turn off the 12 hour format clock                            
  556.           unclock24() - turn off the 24 hour format clock                            
  557.           unselected() - get/set unselected color as an integer                      
  558.           untrim() - pad a string with spaces                                        
  559.           
  560.           vidtype() - get video adaptor type                                         
  561.           vreplicate() - replicate strings vertically to screen                      
  562.           
  563.           waitkey() - get a keystroke like inkey(), supports SET KEY TO              
  564.           warmboot() - perform a warm boot of the computer                           
  565.           
  566.           xor() - bitwise xor of two numbers                                         
  567.           
  568.           _isbutton() - check if a mouse button has been pressed                     
  569.           _lower() - convert a string to lowercase                                   
  570.           _newline() - specify character that terminates lines                       
  571.           _upper() - convert a string to uppercase                                   
  572.           _xkey() - specify no abort in flocate()                                    
  573.           _xkeyval() - specify key that aborts flocate()                             
  574.           _xval()  - get current execute() loop number                               
  575.           __vinit - initialize the video buffers after interrupt(
  576.           
  577.           VIEW - TEXT FILE VIEWER
  578.                Overview                                                              
  579.                Linking View                                                          
  580.                Using View                                                            
  581.           
  582.           XTRACT - PROCEDURE EXTRACTER
  583.                Overview                                                              
  584.                Usage                                                                 
  585.                Linking                                                               
  586.           
  587.           dMENU INTRODUCTION
  588.                Overview                                                              
  589.                Purpose                                                               
  590.                Memory required                                                       
  591.           SETTING UP dMENU
  592.                Setup                                                                 
  593.           COMMAND SUMMARY
  594.                Keystrokes                                                            
  595.           ADDING NEW MENU SELECTIONS
  596.                Add an item                                                           
  597.                Editing keys                                                          
  598.                Fields                                                                
  599.                Description                                                           
  600.                Password                                                              
  601.                Dos commands                                                          
  602.                Batch files                                                           
  603.           BRANCHING TO OTHER MENUS
  604.                Menu branching                                                        
  605.                @menu command                                                         
  606.           GETTING INPUT FROM THE USER
  607.                Input commands                                                        
  608.                @ask command                                                          
  609.                Using the input                                                       
  610.                {Length} command                                                      
  611.                Example                                                               
  612.                Cautions                                                              
  613.           EDITING MENU SELECTIONS
  614.                Editing menus                                                         
  615.           DELETING MENU SELECTIONS
  616.                Deleting items                                                        
  617.           ADDING A NEW TITLE
  618.                Add a title                                                           
  619.           CHANGING COLORS
  620.                Changing colors                                                       
  621.           SETTING THE DATE AND TIME
  622.                Set date/time                                                         
  623.           RUNNING DOS
  624.                Running DOS                                                           
  625.           LOCKING A MENU
  626.                Lock a menu                                                           
  627.                Prevent ESCaping                                                      
  628.           ENVIRONMENT COMMANDS
  629.                LOGO setting                                                          
  630.                COMMANDS setting                                                      
  631.           MISCELLANEOUS
  632.                New menus                                                             
  633.                TSR programs                                                          
  634.                Batch commands                                                        
  635.                Sample menu                                                           
  636.           
  637.