Barracuda, thanks, but my next tutorial lesson already has an keypad detection function built in.

As for the screen cleaning. you might have to sort that out yourself. Either build an loop with slPrint(" ... ", slLocate(1,x)) (i suppose it's fast enough for your use), or you have to manually clean the tile data... something like

for (i = NBG0_MAP; i <= NBG0_MAP * 2; i++) (* void) i = 0x00;

(this provably doesn't work, but i don't have the docs with me right now.)
Ice, suit yourself. I need as many mirrors as possible ^^;. I'm using an paid space and supported only by the good will of a friend. If he needs bandwidth, my pages will surely go down first (since it wastes too mutch banwidth, and the site is directed to local Portugese trafic only). So, it would be a great help to have several mirrors when I go down ^^.