under script, simply use the REXEC function(page 40 of the latest version of the manual).
example :
when i will continusly press the Joystick Hat 1 Left direction, i will send a "a" keystroke pulse (keydown then keyup) every 500 milliseconds
MapKey(&Joystick, H1L, REXEC(0, 500, "ActKey(KEYON+PULSE+'a');"));
Under the GUI, create a chain of events with the right number(or little more) of pulse needed. Press the button once (and no need to old it), and the chain will execute