Index: console.c =================================================================== RCS file: /sources/qemu/qemu/console.c,v retrieving revision 1.12 diff -u -r1.12 console.c --- console.c 10 Feb 2007 22:37:56 -0000 1.12 +++ console.c 13 Feb 2007 15:30:49 -0000 @@ -1078,6 +1078,12 @@ case QEMU_KEY_CTRL_PAGEDOWN: console_scroll(10); break; + case QEMU_KEY_SHIFT_PAGEUP: + console_scroll(-10); + break; + case QEMU_KEY_SHIFT_PAGEDOWN: + console_scroll(10); + break; default: /* convert the QEMU keysym to VT100 key string */ q = buf; Index: sdl.c =================================================================== RCS file: /sources/qemu/qemu/sdl.c,v retrieving revision 1.34 diff -u -r1.34 sdl.c --- sdl.c 24 Jan 2007 21:40:21 -0000 1.34 +++ sdl.c 13 Feb 2007 15:30:49 -0000 @@ -366,6 +366,12 @@ case SDLK_PAGEDOWN: keysym = QEMU_KEY_CTRL_PAGEDOWN; break; default: break; } + } else if (ev->key.keysym.mod & (KMOD_LSHIFT | KMOD_RSHIFT)) { + switch(ev->key.keysym.sym) { + case SDLK_PAGEUP: keysym = QEMU_KEY_SHIFT_PAGEUP; break; + case SDLK_PAGEDOWN: keysym = QEMU_KEY_SHIFT_PAGEDOWN; break; + default: break; + } } else { switch(ev->key.keysym.sym) { case SDLK_UP: keysym = QEMU_KEY_UP; break; @@ -376,7 +382,8 @@ case SDLK_END: keysym = QEMU_KEY_END; break; case SDLK_PAGEUP: keysym = QEMU_KEY_PAGEUP; break; case SDLK_PAGEDOWN: keysym = QEMU_KEY_PAGEDOWN; break; - case SDLK_BACKSPACE: keysym = QEMU_KEY_BACKSPACE; break; case SDLK_DELETE: keysym = QEMU_KEY_DELETE; break; + case SDLK_BACKSPACE: keysym = QEMU_KEY_BACKSPACE; break; + case SDLK_DELETE: keysym = QEMU_KEY_DELETE; break; default: break; } } Index: vl.h =================================================================== RCS file: /sources/qemu/qemu/vl.h,v retrieving revision 1.185 diff -u -r1.185 vl.h --- vl.h 8 Feb 2007 23:09:59 -0000 1.185 +++ vl.h 13 Feb 2007 15:30:49 -0000 @@ -226,6 +226,8 @@ #define QEMU_KEY_CTRL_END 0xe405 #define QEMU_KEY_CTRL_PAGEUP 0xe406 #define QEMU_KEY_CTRL_PAGEDOWN 0xe407 +#define QEMU_KEY_SHIFT_PAGEUP 0xe408 +#define QEMU_KEY_SHIFT_PAGEDOWN 0xe409 void kbd_put_keysym(int keysym);