updated with touch events and works with multi frame zeegas including timed advance