diff -u rockbox-bleeding/apps/plugins/zxbox/spmain.c rb_changed/apps/plugins/zxbox/spmain.c --- rockbox-bleeding/apps/plugins/zxbox/spmain.c 2007-10-15 11:04:42.000000000 +0300 +++ rb_changed/apps/plugins/zxbox/spmain.c 2008-05-14 13:11:03.508226600 +0300 @@ -121,6 +121,10 @@ intkeys[i]=SK_KP_Enter; else if ( settings.keymap[i] == 'S' ) intkeys[i]=SK_KP_Space; + else if ( settings.keymap[i] == 'H' ) + intkeys[i]=SK_Shift_R; + else if ( settings.keymap[i] == 'C' ) + intkeys[i]=SK_Shift_L; else intkeys[i] = (unsigned) settings.keymap[i]; } diff -u rockbox-bleeding/apps/plugins/zxbox/zxbox.c rb_changed/apps/plugins/zxbox/zxbox.c --- rockbox-bleeding/apps/plugins/zxbox/zxbox.c 2007-07-27 12:58:10.000000000 +0300 +++ rb_changed/apps/plugins/zxbox/zxbox.c 2008-05-14 13:10:52.612920100 +0300 @@ -258,6 +258,10 @@ ki = KS_TO_KEY(SK_KP_Enter); else if (c == 'S' ) ki = KS_TO_KEY(SK_KP_Space); + else if (c == 'H' ) + ki = KS_TO_KEY(SK_Shift_R); + else if (c == 'C' ) + ki = KS_TO_KEY(SK_Shift_L); else ki = KS_TO_KEY(c); spkb_kbstate[ki].state = 1; diff -u rockbox-bleeding/apps/plugins/zxbox/zxbox_keyb.c rb_changed/apps/plugins/zxbox/zxbox_keyb.c --- rockbox-bleeding/apps/plugins/zxbox/zxbox_keyb.c 2007-09-20 13:50:22.000000000 +0300 +++ rb_changed/apps/plugins/zxbox/zxbox_keyb.c 2008-05-14 12:34:41.598474500 +0300 @@ -164,7 +164,7 @@ "qwertyuiop\n" "asdfghjkl\n" "zxcvbnm\n" - "S\n" + "SCH\n" "E"; param[l].DEFAULT_LINES = 7;