Index: bindings.c ================================================================== --- bindings.c +++ bindings.c @@ -202,15 +202,15 @@ SDL_Flip(screen); while(SDL_WaitEvent(&ev)) switch(ev.type) { case SDL_KEYDOWN: switch(ev.key.keysym.sym) { case SDLK_ESCAPE: case SDLK_RETURN: case SDLK_KP_ENTER: goto done; - case SDLK_UP: k-=8; if(k<0) k=0; break; - case SDLK_DOWN: k+=8; break; - case SDLK_HOME: k=0; break; - case SDLK_PAGEUP: k-=screen->h; if(k<0) k=0; break; - case SDLK_PAGEDOWN: k+=screen->h; break; + case SDLK_UP: case SDLK_KP8: k-=8; if(k<0) k=0; break; + case SDLK_DOWN: case SDLK_KP2: k+=8; break; + case SDLK_HOME: case SDLK_KP7: k=0; break; + case SDLK_PAGEUP: case SDLK_KP9: k-=screen->h; if(k<0) k=0; break; + case SDLK_PAGEDOWN: case SDLK_KP3: k+=screen->h; break; } goto redraw; case SDL_VIDEOEXPOSE: goto redraw; case SDL_QUIT: Index: edit.c ================================================================== --- edit.c +++ edit.c @@ -508,13 +508,19 @@ for(i=0;igamehelp) modal_draw_popup(classes[cl]->gamehelp); + goto redraw; + case SDLK_F2: + if(cl && classes[cl] && classes[cl]->edithelp) modal_draw_popup(classes[cl]->edithelp); + goto redraw; default: j=ev.key.keysym.unicode; if(j=='$' || j==21) { namei=0; goto redraw; @@ -644,10 +650,12 @@ case SDLK_KP7: m->dir=3; break; case SDLK_KP8: m->dir=2; break; case SDLK_KP9: m->dir=1; break; case SDLK_KP_PLUS: m->dir=(m->dir+1)&7; break; case SDLK_KP_MINUS: m->dir=(m->dir-1)&7; break; + case SDLK_F1: case SDLK_g: if(classes[m->class]->gamehelp) modal_draw_popup(classes[m->class]->gamehelp); break; + case SDLK_F2: case SDLK_h: if(classes[m->class]->edithelp) modal_draw_popup(classes[m->class]->edithelp); break; } goto redraw; case SDL_VIDEOEXPOSE: goto redraw; case SDL_QUIT: