home *** CD-ROM | disk | FTP | other *** search
/ C!T ROM 5 / ctrom5b.zip / ctrom5b / DOS / TEKST / AURORA2 / KEYCODES.AML < prev    next >
Text File  |  1995-04-28  |  2KB  |  63 lines

  1.  
  2. /* ------------------------------------------------------------------ */
  3. /* Macro:        KEYCODES.AML                                         */
  4. /* Written by:   nuText Systems                                       */
  5. /*                                                                    */
  6. /* Description:  This macro displays various keycodes for each key    */
  7. /*               pressed.                                             */
  8. /*                                                                    */
  9. /* Usage:        Select this macro from the Macro List (on the Macro  */
  10. /*               menu), or run it from the macro picklist <shift f12> */
  11. /* ------------------------------------------------------------------ */
  12.  
  13.   include bootpath "define.aml"
  14.  
  15.   var keycode
  16.  
  17.   // create main window with titles
  18.   createwindow
  19.   setwinobj
  20.   setframe ">b"
  21.   setcolor  border_color   color white on gray
  22.   setcolor  text_color     color brightgreen on gray
  23.   settitle "Display Keycodes - press <esc> twice to exit"
  24.   setwinctrl '≡'
  25.   sizewindow 6 5 72 20 "ad"
  26.   setborder "1i"
  27.   setshadow 2 1
  28.   writeline " Keycode  Hexcode  Scancode  Ascii  Hex  Char  Keyname"
  29.  
  30.   // create scrollable subwindow
  31.   createwindow
  32.   sizewindow 0 1 0 0 "rw1" '' (getprevwin)
  33.   setcolor  text_color     color black on gray
  34.   showcursor 80 90
  35.  
  36.   repeat
  37.  
  38.     lastcode = keycode                // save last keycode
  39.     keycode = getkey 's'              // get next key with scancode
  40.     asciicode = keycode & 0ffh        // get ascii code from keycode
  41.     keyname = getkeyname keycode      // get keyname from keycode
  42.     if lastcode then
  43.       writeline
  44.     end
  45.  
  46.     writestr
  47.       (pad keycode 8) +               // display keycode
  48.       (pad (base keycode 16) 9) +     // display hexcode
  49.       (pad (keycode shr 8) 10) +      // display scancode
  50.       (pad asciicode 7) +             // display asciicode (if any)
  51.       (pad (base asciicode 16) 5) +   // display asciicode (if any)
  52.       (pad (char asciicode) 6) +      // display key char (if any)
  53.       "  " + keyname                  // display keyname
  54.  
  55.   // exit if <esc> pressed twice or mouse button pressed
  56.   until keycode == <esc> and lastcode == keycode or
  57.         keycode == <button>
  58.  
  59.   // destroy subwindow and main window
  60.   destroywindow
  61.   destroywindow
  62.  
  63.