home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 19 / CD_ASCQ_19_010295.iso / dos / prg / bas / asilib11 / input.doc < prev    next >
Text File  |  1994-10-22  |  7KB  |  224 lines

  1. ********************************  INPUT  ************************************
  2.  
  3. ASILIB Input subroutines (C) Copyright 1994 Douglas Herr
  4. All rights reserved
  5.  
  6. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  7.  
  8. CLEARKEY:     clears the keyboard's 'type-ahead' buffer
  9.  
  10. Parameters:   None.
  11.  
  12.               Uses BIOS functions to remove all keys in the buffer.
  13.  
  14. Supports:     Standard and Enhanced keyboards.
  15.  
  16. Example:
  17.  
  18.         call sub "clearkey"
  19.  
  20.  
  21.  
  22. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  23.  
  24. GETKEY:       returns next key pressed
  25.  
  26. Parameters:   No input parameters; returns ASCII keycode of first key
  27.               pressed.
  28.  
  29.               If keycode < 255, then a normal key was pressed.  If the
  30.               keycode > 255, then an extended key such as an F-key or
  31.               one of the cursor keys was pressed.  If an extended key
  32.               was pressed, the ASCII code of the key is (keycode - 256).
  33.               Uses BIOS functions; supports enhanced keyboard if present.
  34.  
  35. Example:
  36.  
  37.         call sub "getkey", keycode
  38.         REM  check for extended key
  39.         if keycode > 255 then
  40.            REM  do instructions here if extended key
  41.            REM  etc.
  42.  
  43.  
  44.  
  45. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  46.  
  47. HIDEMOUSE:    Makes mouse cursor disappear
  48.  
  49. Parameters:   None.
  50.  
  51.               Makes the mouse cursor disappear.  The mouse driver continues
  52.               to track the mouse's motion and button status.
  53.  
  54. Restrictions: Must call ISMOUSE before using this subroutine.
  55.  
  56.  
  57. Example:
  58.  
  59.         call sub "hidemouse"
  60.  
  61.  
  62.  
  63. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  64.  
  65. JANEIN:       German language version of "YesNo"
  66.               waits for "J" or "N" key to be pressed
  67.  
  68. Parameters:   No input parameters; returns "J" or "N" keycode.
  69.  
  70.               Key pressed may be upper or lower case.  Upper case is
  71.               always returned.
  72.  
  73. Example:
  74.  
  75.         call sub "janein", keycode
  76.  
  77.  
  78.  
  79. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  80.              
  81. KEYIFWAITING:Returns first key if one is waiting in the keyboard buffer,
  82.              or returns with no keycode if no keypress is waiting.
  83.  
  84. Parameters:  keycode
  85.  
  86.              Returns keycode = 0 if no key is waiting in the keyboard
  87.              buffer, otherwise returns the key's ASCII keycode.
  88.  
  89. Example:
  90.  
  91.         call sub "keyifwaiting", keycode
  92.  
  93.  
  94.  
  95. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  96.  
  97. KEYWAITING:   Determines if a key is waiting in the keyboard buffer.
  98.  
  99. Parameters:   No input parameters; returns keycode = 0 if no keys in buffer,
  100.               keycode = 1 if one or more keys are available in the buffer.
  101.               Does not remove the key code from the buffer; uses BIOS.
  102.  
  103. Supports:     Standard and enhanced keyboards.
  104.  
  105.  
  106. Example:
  107.  
  108.         call sub "keywaiting", keycode
  109.  
  110.         REM  check to see if a key has been pressed
  111.         if keycode > 0 then
  112.           REM  etc.
  113.  
  114.  
  115.  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  116.  
  117. KEYORBUTTON:  Returns first key pressed or mouse button pressed
  118.  
  119. Parameters:   No input parameters; returns buttoncode and keycode.
  120.  
  121.               Returns first key pressed or mouse button pressed.  If no key
  122.               is waiting in the keyboard buffer and no mouse button is
  123.               pressed, KEYORBUTTON waits until one of these events happens.
  124.               If a key is waiting in the keyboard buffer before KEYORBUTTON
  125.               is called, the key is returned to the calling program without
  126.               checking mouse buttons.  Buttoncode = 0 if a key has been read,
  127.               otherwise buttoncode indicates which buttons are pressed.  See
  128.               GETKEY for key codes.
  129.  
  130.               Buttoncodes are:
  131.  
  132.                1 = left button pressed
  133.                2 = right button pressed
  134.                4 = center button pressed
  135.  
  136.               Note that more than one button may be pressed at the same
  137.               time.  For example, buttoncode = (2 OR 4) if the right and
  138.               center buttons are both pressed.
  139.  
  140. Example:
  141.  
  142.         call sub "keyorbutton", buttoncode, keycode
  143.  
  144.  
  145.  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  146.  
  147. MOUSESTATUS:  determine mouse position and button status
  148.  
  149. Parameters:   No input parameters; returns x and y coordinates and buttoncode.
  150.  
  151.               Returns the mouse button status and mouse position.
  152.               Buttoncode is a code which indicates which mouse buttons,
  153.               if any, are pressed, and x & y are the PIXEL coordinates of
  154.               the mouse cursor, even in text modes.  Pixel coordinates start
  155.               with (0,0) in the upper left corner.  X-coordinates are
  156.               horizontal and Y-coordinates are vertical (increasing from
  157.               top of screen to bottom).  See KEYORBUTTON to decode buttoncode.
  158.  
  159. Example:
  160.         call sub "mousestatus", x, y, buttoncode
  161.  
  162.  
  163.  
  164. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  165.  
  166. OUINON:       French language version of "YesNo"
  167.               waits for "O" or "N" key to be pressed
  168.  
  169. Parameters:   No input parameters; returns keycode = ASC("O") or
  170.               ASC("N").
  171.  
  172.               Key pressed may be upper or lower case.  Upper case is
  173.               returned.  Uses BIOS functions.
  174.  
  175. Example:
  176.  
  177.         call sub "ouinon", keycode
  178.  
  179.  
  180.  
  181.  
  182. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  183.  
  184. SHOWMOUSE:    make mouse cursor visible on screen
  185.  
  186. Parameters:   None
  187.  
  188. Restrictions: Must call ISMOUSE before using this subroutine.
  189.  
  190. Example:
  191.  
  192.         call sub "showmouse"
  193.  
  194.  
  195. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  196.  
  197. SINO:         Spanish language version of "YesNo"
  198.  
  199. Parameters:   No input parameters; returns keycode = ASC("S")
  200.               or ASC("N").
  201.  
  202.               Waits for "S" or "N" key to be pressed.  Key pressed may
  203.               be upper or lower case; upper case is always returned.
  204.               Uses BIOS functions
  205.  
  206. Example:
  207.  
  208.         call sub "sino", keycode
  209.  
  210.  
  211. ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  212.  
  213. YESNO:        Waits for "Y" or "N" key to be pressed
  214.  
  215. Parameters:   No input parameters; returns keycode = ASCII code for "Y"
  216.               or "N".  Key pressed may be upper or lower case; upper case
  217.               keycode is returned.  Uses BIOS functions.
  218.  
  219. Example:
  220.  
  221.         call sub "yesno", keycode
  222.  
  223.  
  224.