[Immo\Convertor\Kmrw to EtsmartTemic12]
!Конвертор транспондера Temic12 для Mercedes-Benz Sprinter or Vito, 
!в буфер калькулятора вводим данные Temic12 Kmrw, размером 8 байт 
!и получаем данные для Temic12 в формате Etsmart, размером 8 байт
!
!
!Autor: telik@ukrwest.net 2008 
!
! 

Size(300,330); // ширина и высота

Form
{
    	Group("Kmrw - Temic12 ",5,5,290,50)
    		{
        	HexDigit(H1," ",55,20,25,2);
		HexDigit(H2," ",75,20,25,2);
		HexDigit(H3," ",95,20,25,2);
		HexDigit(H4," ",115,20,25,2);
		HexDigit(H5," ",135,20,25,2);
		HexDigit(H6," ",155,20,25,2);
		HexDigit(H7," ",175,20,25,2);
		HexDigit(H8," ",195,20,25,2);
    		}
    	Group("Описание",5,60,290,100) 
    		{
        	Label(lb4,"Конвертор транспондера Temic12 для Mercedes-Benz",0,17);
        	Label(lb5,"конвертирует данные Temic12 Kmrw",0,32);
        	Label(lb6,"в формат EtsmartTemic12",0,47);
		Label(msg," ",0,65);
		Label(msg1," ",0,80);
    		}
	Group("Информация",5,165,290,45)
    		{
        Label(message," ",0,20);
    		}
	Group("Данные EtsmartTemic 12",5,215,200,55) 
    		{
		HexDigit(X1," ",15,21,25,2);
        	HexDigit(X2," ",35,21,25,2);
		HexDigit(X3," ",55,21,25,2);
		HexDigit(X4," ",75,21,25,2);
		HexDigit(X5," ",95,21,25,2);
		HexDigit(X6," ",115,21,25,2);
		HexDigit(X7," ",135,21,25,2);
		HexDigit(X8," ",155,21,25,2);
        	}
    	Picture(Picture1,"mercedes.bmp",210,213,0,0);
}

OnShow 
{
	msg.Color = 0xFF0000; msg.Bold = 1; msg = "Введите данные Temic12 ";		
	msg1.Color = 0xFF0000; msg1.Bold = 1; msg1 = "и нажмите кнопку <Применить>";		
	x1=0x66; x2=0xF0; x3=0; x4=0; x5=0; x6=0; x7=0; x8=0;
	h1=0; h2=0; h3=0; h4=0; h5=0; h6=0; h7=0; h8=0;	
}

OnApply
{
	var10 = 0; var30 = 0;
	var1=h1; var2=h2; var3=h3; var4=h4; var5=h5; var6=h6; var7=h7; var8=h8; 
        if (var1 != 0x66) { var10 = 1; while ( var10 != 64) 
      { var11=var1;var12=var2;var13=var3;var14=var4;var15=var5;var16=var6;var17=var7;var18=var8; 
	var1 = ((var11 << 1) | (((var18 << 1) | var8) >> 8)) & 0xFF;
	var2 = ((var12 << 1) | (((var11 << 1) | var1) >> 8)) & 0xFF;
	var3 = ((var13 << 1) | (((var12 << 1) | var2) >> 8)) & 0xFF;
	var4 = ((var14 << 1) | (((var13 << 1) | var3) >> 8)) & 0xFF;
	var5 = ((var15 << 1) | (((var14 << 1) | var4) >> 8)) & 0xFF;
	var6 = ((var16 << 1) | (((var15 << 1) | var5) >> 8)) & 0xFF;
	var7 = ((var17 << 1) | (((var16 << 1) | var6) >> 8)) & 0xFF;
	var8 = ((var18 << 1) | (((var17 << 1) | var7) >> 8)) & 0xFF;
	var10 = var10 + 1; if (var1 = 0x66) { var10 = 64; var30 = 0;}
      }			  }
	if (var1 != 0x66) { var30 = 1;}
	if ( var30 = 1 ) {message.Color = 0x0000FF; message.Bold = 1; message = "Не верные данные Codereaderа !!!";
			                         var1=0; var2=0; var3=0; var4=0; var5=0; var6=0; var7=0; var8=0;}
	else {message.Color=0x0000FF; message.Bold=1; 
	var20=0; while(var20!=101){message="Конвертирование: "+#i.Var20+"%"; var21=0; while(var21!=500){var21=var21+1;} var20=var20+1;}
	message.Color=0xFF0000; message.Bold=1; message = "Переконвертировано в формат EtsmartUSB.";}	

	x1=var1; x2=var2; x3=var3; x4=var4; x5=var5; x6=var6; x7=var7; x8=var8;			
}

