
simmxtools v0.2:
	some usefull stuff, usage:
  	-simmxtools -help
		-simmxtools <=will read config.txt
		-simmxtool "keywords", eg: simmxtools "msgbox:'hola'" or simmxtools "run:'cmd /c notepad'\nplacewindow:'notepad',1,2000" <= will wait for notepad start max 2sec
    -try this: simmxtools "msgbox:'hola from simmx tools!'\nmsgbox:'new line'\nrun:'cmd /c notepad'\nshowwindow:'notepad',9,1000\nplacewindow:'notepad',0\nsleep:1400\nplacewindow:'notepad',5\nsleep:1400\nplacewindow:'notepad',1\nsendkeys:'hello{SPACE}from{SPACE}simmx{SPACE}tools!{RETURN}'\nsendkeys:'{RETURN}1234567'\nsendkeys:'{BACK}{BACK}'\nsendkeys:'{SPACE}'\nsendkeys:'6789'\nsendkeys:'{LMENU}'\nsendkeys:'{DOWN}{LEFT}{LEFT}'\nsendkeys:'{UP}{RETURN}'"
	
	plug can be created simply with regular dll(named plug_anyname.dll), 2 functions must be defined:
		-INT32 plugInitKeywords(char **ptrtokeywordsnullterm)
		-INT32 plugOnKeyword(DWORD keywind,DWORD numArgs,Pgn pgn,Pgs pgs,Pgr pgr,Psr psr,pluginter &pi)
    If there are clashes from two -same name- keyword in two separate dlls, prog will warn you
	
	known bug:
		-upp version of dll sample crashes, even on simple call PromptOK("str");
    -msgbox:'text ',-16.6,' more text' won't print correct double(just1stPart)
  
  updates(legend: :modified, +added, *fix/todo):
  	@10.dec.2016>
		:$res is used in place of previous $lastres(oldPlugRes/oldRunWait) <=this is thrown out, use $res to acces it
    :if/while - some bugs fixed
    +if - now optionally only leftmost var can be used,eg: if:'$dbl' or if:'$str'
    +break/continue [numNestedLevels=def=1], eg: innermost 'break:3' will break out to 2nd while, where there are 4 nested while's
    	the best would be to use named while, and specify break/continue to break/continue to - since now if code is later changed/modified,
      break 3(forExample) may go out of sync - for now prog will warn you if you do for example: break 10, where there are only 2 nested while's
      Added tests in config-all.txt
    +$line - to access current line - 1based - as number
    +msgboxtitle keyword eg: msgboxtitle:'title',"regular msgboxtitle has ",&b,' chars'
    *escapes \\, $$ don't work yet, so you can't do this yet,eg: 'text$$idno' or 'text\\nstring', but you can 'text$','idno' and 'text\','nstring'



sendkeys keys:
	"NUMPAD7", 	XK_KP_7,	 	"BACK", 	XK_BackSpace, 
	"NUMPAD8", 	XK_KP_8,		"TAB", 		XK_Tab,
	"NUMPAD9", 	XK_KP_9, 		"RETURN", 	XK_Return,
	"MULTIPLY", XK_KP_Multiply,	"SHIFT",	XK_Shift_Lock,
	"ADD",		XK_KP_Add, 	 	"CONTROL",	XK_Control_L,
	"SEPARATOR", XK_KP_Separator,"MENU", 	XK_Super_L,
	"SUBTRACT", XK_KP_Subtract,	"PAUSE", 	XK_Pause,
	"DECIMAL",	XK_KP_Decimal,	/*"CAPITAL", 	VK_CAPITAL,*/
	"DIVIDE",	XK_KP_Divide,	"ESCAPE",	XK_Escape,
	"F1", 		XK_F1, 			"SPACE", 	XK_KP_Space,
	"F2", 		XK_F2,	 		"END",		XK_End,
	"F3",		XK_F3, 			"HOME",		XK_Home,
	"F4",		XK_F4, 			"LEFT", 	XK_Left,
	"F5",		XK_F5,		 	"UP", 		XK_Up,
	"F6",		XK_F6,		 	"RIGHT",	XK_Right,
	"F7",		XK_F7,		 	"DOWN",		XK_Down,
	"F8",		XK_F8,		 	"PRINT",	XK_Sys_Req,
	"F9",		XK_F9,		 	/*"SNAPSHOT",	VK_SNAPSHOT,*/
	"F10",		XK_F10,		 	"INSERT",	XK_Insert,
	"F11",		XK_F11,		 	"DELETE",	XK_Delete,
	"F12",		XK_F12,		 	"LWIN",		XK_Meta_L,
	"NUMLOCK",	XK_Num_Lock, 	"RWIN",		XK_Meta_R,
	"SCROLL",	XK_Scroll_Lock,	"NUMPAD0",	XK_KP_0,
	"LSHIFT",	XK_Shift_L,	 	"NUMPAD1", 	XK_KP_1,
	"RSHIFT",	XK_Shift_R,	 	"NUMPAD2",	XK_KP_2,
	"LCONTROL",	XK_Control_L, 	"NUMPAD3",	XK_KP_3,
	"RCONTROL",	XK_Control_R, 	"NUMPAD4",	XK_KP_4,
	"LMENU",	XK_Super_L,		"NUMPAD5",	XK_KP_5,
	"RMENU",	XK_Super_R, 	"NUMPAD6",	XK_KP_6,
	"PGUP", 	XK_Page_Up, 	"PGDOWN", 	XK_Page_Down,
	"CAPSLOCK", XK_Caps_Lock, 	"BACKSPACE",XK_BackSpace,