		case VK_BACK           : kcode = C64K_Del ; break ; 
		case VK_TAB            : kcode = C64K_Ctrl ; break ; 


		case VK_RETURN         : kcode = C64K_Return ; break ; 

		case VK_ESCAPE         : kcode = C64K_Run_Stop ; break ; 

		case VK_SPACE          : kcode = C64K_Space ; break ; 
		case VK_PRIOR          : kcode = C64K_RESTORE ; break ; 
		//case VK_NEXT           0x22
		//case VK_END            0x23
		case VK_HOME           : kcode = C64K_CLR_HOME ; break ; 
		case VK_LEFT           : kcode = C64K_CRSR_LEFT ; break ; 
		case VK_UP             : kcode = C64K_CRSR_UP ; break ; 
		case VK_RIGHT          : kcode = C64K_CRSR_RIGHT ; break ; 
		case VK_DOWN           : kcode = C64K_CRSR_DOWN ; break ; 
		case VK_INSERT         : kcode = C64K_Pound ; break ; 
		case VK_DELETE         : kcode = C64K_Up_Arrow ; break ; 

		case '0' : kcode = C64K_0 ; break ;
		case '1' : kcode = C64K_1 ; break ;
		case '2' : kcode = C64K_2 ; break ;
		case '3' : kcode = C64K_3 ; break ;
		case '4' : kcode = C64K_4 ; break ;
		case '5' : kcode = C64K_5 ; break ;
		case '6' : kcode = C64K_6 ; break ;
		case '7' : kcode = C64K_7 ; break ;
		case '8' : kcode = C64K_8 ; break ;
		case '9' : kcode = C64K_9 ; break ;

		case 'A' : kcode = C64K_A ; break ;
		case 'B' : kcode = C64K_B ; break ;
		case 'C' : kcode = C64K_C ; break ;
		case 'D' : kcode = C64K_D ; break ;
		case 'E' : kcode = C64K_E ; break ;
		case 'F' : kcode = C64K_F ; break ;
		case 'G' : kcode = C64K_G ; break ;
		case 'H' : kcode = C64K_H ; break ;
		case 'I' : kcode = C64K_I ; break ;
		case 'J' : kcode = C64K_J ; break ;
		case 'K' : kcode = C64K_K ; break ;
		case 'L' : kcode = C64K_L ; break ;
		case 'M' : kcode = C64K_M ; break ;
		case 'N' : kcode = C64K_N ; break ;
		case 'O' : kcode = C64K_O ; break ;
		case 'P' : kcode = C64K_P ; break ;
		case 'Q' : kcode = C64K_Q ; break ;
		case 'R' : kcode = C64K_R ; break ;
		case 'S' : kcode = C64K_S ; break ;
		case 'T' : kcode = C64K_T ; break ;
		case 'U' : kcode = C64K_U ; break ;
		case 'V' : kcode = C64K_V ; break ;
		case 'W' : kcode = C64K_W ; break ;
		case 'X' : kcode = C64K_X ; break ;
		case 'Y' : kcode = C64K_Y ; break ;
		case 'Z' : kcode = C64K_Z ; break ;

		case VK_F1             : kcode = C64K_F1 ; break ; 
		case VK_F2             : kcode = C64K_F2 ; break ; 
		case VK_F3             : kcode = C64K_F3 ; break ; 
		case VK_F4             : kcode = C64K_F4 ; break ; 
		case VK_F5             : kcode = C64K_F5 ; break ; 
		case VK_F6             : kcode = C64K_F6 ; break ; 
		case VK_F7             : kcode = C64K_F7 ; break ; 
		case VK_F8             : kcode = C64K_F8 ; break ; 


		case VK_LSHIFT         : kcode = C64K_Left_Shift ; break ; 
		case VK_RSHIFT         : kcode = C64K_Right_Shift; break ; 
		case VK_LCONTROL       : kcode = C64K_CBM ; break ; 


		case VK_OEM_1          : kcode = C64K_COLON ; break ; 
		case VK_OEM_PLUS       : kcode = C64K_Minus ; break ; 
		case VK_OEM_COMMA      : kcode = C64K_COMMA ; break ; 
		case VK_OEM_MINUS      : kcode = C64K_Plus ; break ; 
		case VK_OEM_PERIOD     : kcode = C64K_PERIOD ; break ; 
		case VK_OEM_2          : kcode = C64K_SLASH ; break ; 
		case VK_OEM_3          : kcode = C64K_Left_Arrow ; break ; 

		case VK_OEM_4          : kcode = C64K_AT_SIGN ; break ; 
		case VK_OEM_5          : kcode = C64K_EQUALS ; break ; 
		case VK_OEM_6          : kcode = C64K_STAR ; break ; 
		case VK_OEM_7          : kcode = C64K_SEMICOLON ; break ; 
