int cmd_ver(char param[])
{

if (!strcmp(param, "kernel"))
	{
	char		*kvbuf;
	char		*vA, *vB, *vC, *vD;
	unsigned	*Rev;

	kvbuf = malloc(16);
	kol_get_kernel_ver(kvbuf);
	vA = kvbuf+0;
	vB = kvbuf+1;
	vC = kvbuf+2;
	vD = kvbuf+3;
	Rev = (unsigned*)(kvbuf + 5);

	#if LANG_ENG
		printf ("  KolibriOS v%d.%d.%d.%d. Kernel SVN-rev.: %d\n\r", *vA, *vB, *vC, *vD, *Rev);
	#elif LANG_RUS
		printf ("  KolibriOS v%d.%d.%d.%d. SVN-ॢ. ï¤à : %d\n\r", *vA, *vB, *vC, *vD, *Rev);
	#endif

	free(kvbuf);

        return TRUE;
	}

if (!strcmp(param, "cpu"))
   {
   unsigned a, b, c, d;
   char str[13];

   str[12] = '\0';

   asm ("cpuid" :
		"=a" (a),
        "=b" (b),
        "=c" (c),
        "=d" (d):
	"a"(0));

    str[0] = (b&0x000000ff)	>> 0;
    str[1] = (b&0x0000ff00)	>> 8;
    str[2] = (b&0x00ff0000)	>> 16;
    str[3] = (b&0xff000000)	>> 24;

    str[4] = (d&0x000000ff)	>> 0;
    str[5] = (d&0x0000ff00)	>> 8;
    str[6] = (d&0x00ff0000)	>> 16;
    str[7] = (d&0xff000000)	>> 24;

    str[8] = (c&0x000000ff)	>> 0;
    str[9] = (c&0x0000ff00)	>> 8;
    str[10] = (c&0x00ff0000)	>> 16;
    str[11] = (c&0xff000000)	>> 24;

    printf("%s\n\r", str);
    return TRUE;
   }


printf ("  Shell v%s\n\r", SHELL_VERSION);
return TRUE;
}