compile insert msWin_VirtualKey_Equates
/*
    ** Copyright (C) 2012 Revelation Software Inc. All Rights Reserved **
   
   Author    Mr C
   Date      Oct 2012
   Purpose   Virtual Key equates
   
   Comments
   ========
   
   
   Amended   Date       Reason
   =======   ====       ======
   Mr C      10 Nov 15  Added KEYSTATE_DOWN$  
*/
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#ifndef _MSWIN_VIRTUALKEY_EQUATES_
#define _MSWIN_VIRTUALKEY_EQUATES_
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   // KeyState constants for the KEYSTATE and ASYNCKEYSTATE properties
   equ KEYSTATE_DOWN$     to 0x8000

///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

   equ VK_LBUTTON$        to 0x01
   equ VK_RBUTTON$        to 0x02
   equ VK_CANCEL$         to 0x03
   equ VK_MBUTTON$        to 0x04    /* NOT contiguous with L & RBUTTON */

   equ VK_BACK$           to 0x08
   equ VK_TAB$            to 0x09

   equ VK_CLEAR$          to 0x0C
   equ VK_RETURN$         to 0x0D

   equ VK_SHIFT$          to 0x10
   equ VK_CONTROL$        to 0x11
   equ VK_MENU$           to 0x12
   equ VK_PAUSE$          to 0x13
   equ VK_CAPITAL$        to 0x14

   equ VK_KANA$           to 0x15
   equ VK_HANGEUL$        to 0x15  /* old name - should be here for compatibility */
   equ VK_HANGUL$         to 0x15
   equ VK_JUNJA$          to 0x17
   equ VK_FINAL$          to 0x18
   equ VK_HANJA$          to 0x19
   equ VK_KANJI$          to 0x19

   equ VK_ESCAPE$         to 0x1B

   equ VK_CONVERT$        to 0x1C
   equ VK_NONCONVERT$     to 0x1D
   equ VK_ACCEPT$         to 0x1E
   equ VK_MODECHANGE$     to 0x1F

   equ VK_SPACE$          to 0x20
   equ VK_PRIOR$          to 0x21
   equ VK_NEXT$           to 0x22
   equ VK_END$            to 0x23
   equ VK_HOME$           to 0x24
   equ VK_LEFT$           to 0x25
   equ VK_UP$             to 0x26
   equ VK_RIGHT$          to 0x27
   equ VK_DOWN$           to 0x28
   equ VK_SELECT$         to 0x29
   equ VK_PRINT$          to 0x2A
   equ VK_EXECUTE$        to 0x2B
   equ VK_SNAPSHOT$       to 0x2C
   equ VK_INSERT$         to 0x2D
   equ VK_DELETE$         to 0x2E
   equ VK_HELP$           to 0x2F
   
   equ VK_0$              to 0x30
   equ VK_1$              to 0x31
   equ VK_2$              to 0x32
   equ VK_3$              to 0x33
   equ VK_4$              to 0x34
   equ VK_5$              to 0x35
   equ VK_6$              to 0x36
   equ VK_7$              to 0x37
   equ VK_8$              to 0x38
   equ VK_9$              to 0x39
   
   equ VK_A$              to 0x41
   equ VK_B$              to 0x42
   equ VK_C$              to 0x43
   equ VK_D$              to 0x44
   equ VK_E$              to 0x45
   equ VK_F$              to 0x46
   equ VK_G$              to 0x47
   equ VK_H$              to 0x48
   equ VK_I$              to 0x49
   equ VK_J$              to 0x4A
   equ VK_K$              to 0x4B
   equ VK_L$              to 0x4C
   equ VK_M$              to 0x4D
   equ VK_N$              to 0x4E
   equ VK_O$              to 0x4F
   equ VK_P$              to 0x50
   equ VK_Q$              to 0x51
   equ VK_R$              to 0x52
   equ VK_S$              to 0x53
   equ VK_T$              to 0x54
   equ VK_U$              to 0x55
   equ VK_V$              to 0x56
   equ VK_W$              to 0x57
   equ VK_X$              to 0x58
   equ VK_Y$              to 0x59
   equ VK_Z$              to 0x5A
   
   equ VK_LWIN$           to 0x5B
   equ VK_RWIN$           to 0x5C
   equ VK_APPS$           to 0x5D

   equ VK_NUMPAD0$        to 0x60
   equ VK_NUMPAD1$        to 0x61
   equ VK_NUMPAD2$        to 0x62
   equ VK_NUMPAD3$        to 0x63
   equ VK_NUMPAD4$        to 0x64
   equ VK_NUMPAD5$        to 0x65
   equ VK_NUMPAD6$        to 0x66
   equ VK_NUMPAD7$        to 0x67
   equ VK_NUMPAD8$        to 0x68
   equ VK_NUMPAD9$        to 0x69
   equ VK_MULTIPLY$       to 0x6A
   equ VK_ADD$            to 0x6B
   equ VK_SEPARATOR$      to 0x6C
   equ VK_SUBTRACT$       to 0x6D
   equ VK_DECIMAL$        to 0x6E
   equ VK_DIVIDE$         to 0x6F
   equ VK_F1$             to 0x70
   equ VK_F2$             to 0x71
   equ VK_F3$             to 0x72
   equ VK_F4$             to 0x73
   equ VK_F5$             to 0x74
   equ VK_F6$             to 0x75
   equ VK_F7$             to 0x76
   equ VK_F8$             to 0x77
   equ VK_F9$             to 0x78
   equ VK_F10$            to 0x79
   equ VK_F11$            to 0x7A
   equ VK_F12$            to 0x7B
   equ VK_F13$            to 0x7C
   equ VK_F14$            to 0x7D
   equ VK_F15$            to 0x7E
   equ VK_F16$            to 0x7F
   equ VK_F17$            to 0x80
   equ VK_F18$            to 0x81
   equ VK_F19$            to 0x82
   equ VK_F20$            to 0x83
   equ VK_F21$            to 0x84
   equ VK_F22$            to 0x85
   equ VK_F23$            to 0x86
   equ VK_F24$            to 0x87

   equ VK_NUMLOCK$        to 0x90
   equ VK_SCROLL$         to 0x91

/*
 * VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
 * Used only as parameters to GetAsyncKeyState() and GetKeyState().
 * No other API or message will distinguish left and right keys in this way.
 */
 
   equ VK_LSHIFT$         to 0xA0
   equ VK_RSHIFT$         to 0xA1
   equ VK_LCONTROL$       to 0xA2
   equ VK_RCONTROL$       to 0xA3
   equ VK_LMENU$          to 0xA4
   equ VK_RMENU$          to 0xA5
   
/*
 * 0xB8 - 0xB9 : reserved
 */
   equ VK_OEM_1$          to 0xBA  ; // ';:' for US
   equ VK_OEM_PLUS$       to 0xBB  ; // '+' any country
   equ VK_OEM_COMMA$      to 0xBC  ; // ',' any country
   equ VK_OEM_MINUS$      to 0xBD  ; // '-' any country
   equ VK_OEM_PERIOD$     to 0xBE  ; // '.' any country
   equ VK_OEM_2$          to 0xBF  ; // '/?' for US
   equ VK_OEM_3$          to 0xC0  ;  // '`~' for US


   equ VK_PROCESSKEY$     to 0xE5

   equ VK_ATTN$           to 0xF6
   equ VK_CRSEL$          to 0xF7
   equ VK_EXSEL$          to 0xF8
   equ VK_EREOF$          to 0xF9
   equ VK_PLAY$           to 0xFA
   equ VK_ZOOM$           to 0xFB
   equ VK_NONAME$         to 0xFC
   equ VK_PA1$            to 0xFD
   equ VK_OEM_CLEAR$      to 0xFE
   
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
#endif
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////



