Limited Waitsystem() needed

BlitzMax Forums/BlitzMax Programming/Limited Waitsystem() needed

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

I need a function that acts like Waitsystem() but will ignore
everything but KeyHit or keydown events while at the same time allowing me to catch key presses like Escape.
I also need to preserve the behavior of holding down a key doesnt start a keydown event until a second after first holding down the key (like a console window)

The problem with Waitsystem is that hitting a key gives 2 events and if you touch the mouse a large amount of events fire off.

Any ideas on how i can get this (hopefully without resorting to hooks and events)??