Here is an example 'running' macro where the routine is move 5 pixels repeatedly every 3 seconds unless the registry key 'stopmacro' exists. If the registry key stopmacro exists, the key will be deleted (so that it can be re-created in the future by the 'stopper' macro)
<REPEAT UNTIL Variable="%macro%" Condition="\x00" Value="-12"/>
<IF REGISTRY Key="TRUE" Exists="TRUE" Path="HKEY_CURRENT_USER\\Software\\Insight Software Solutions\\Macro Express 4\\Miscellaneous\\stopmacro\\"/>
<DELETE REGISTRY KEY Key="HKEY_CURRENT_USER\\Software\\Insight Software Solutions\\Macro Express 4\\Miscellaneous\\stopmacro\\" _IGNORE="0x0022" _IGNORE="0x0023"/>
<MACRO STOP/>
<END IF/>
<MOUSE MOVE Option="\x03" X="5" Y="1" _PROMPT="0x000A"/>
<DELAY Flags="\x01" Time="3"/>
<END REPEAT/>
here is an example 'stopper' macro, the first line creates the registry key 'stopmacro' and then you can put whatever else you want afterwards:
<CREATE REGISTRY KEY Key="HKEY_CURRENT_USER\\Software\\Insight Software Solutions\\Macro Express 4\\Miscellaneous\\stopmacro" _IGNORE="0x0022" _IGNORE="0x0023"/>