[Dashboard\Chevrolet\Cruze\Cruze Dash  24C16]

Size(280,300); 

Form 
{
    Group("Пробег",15,10,120,50)
    {
        Digit(Distance," ",5,18,70);
        Label(lbkm,"КМ",90,20);
   
    
  
        Label(pn," ",0,18);
    }
    Group("Информация",5,115,270,45) 
    {
        Label(msg," ",0,18);
    }    
    Group("Описание",5,160,270,90) 
    {
        Label(lb1,"Калькулятор пробега для Chevrolet Cruze  Dash.",0,20);
        Label(lb2,"EEPROM 24C16 .",0,35);
        Label(lb3,"Введите нужное значение в окне <Пробег>.",0,50);
        Label(lb4,"Нажмите кнопку <Применить>.",0,65);
    }
    Picture(Logo,"Chevrolet.bmp",180,8,0,0);
}



OnShow 
{
	Var0 = 0;
          
        Var1 = (@0x58 << 16) |(@0x59 << 8)| @0x5A;
        Var2 = (@0x9E << 16) |(@0x9F << 8)| @0x9D;
       
         
        
        
        Var1 = Var1  /64;
        if(Var1 > 999900) {Var0 = Var0 + 1;}
        if(Var0 = 0)
        {
             
           msg.Color = 0xFF0000;
           msg.Bold = 1;
           Distance = Var1;
           msg = "Дамп ОК. Введите новый пробег.";
                
        }
	else
	{
           msg.Color = 0x0000FF;
	   msg.Bold = 1;
	   msg = "Неверный дамп!";
	   Distance = 0;
	}
}

OnApply 
{
    Var1 = Distance;
    Var5 = 0;
    if(Var1 > 999900) {Var5 = 1;}
    if(Var1 < 100)   {Var5 = 1;}
    if(Var5 != 0)
    {
        msg.Color = 0x0000FF;
        msg.Bold = 1;
        msg = "Пробег должен быть от 100 до 999900 км";
    }
    else
    { 
       Var1 = Var1 * 64;  
       Var2 = Var1 >> 16; Var3 = Var1 >> 8; Var4 = Var1 & 255;
       @0x58 = Var2; @0x59 = Var3; @0x57 = Var4; @0x5a = Var4;
       @0x9e = Var2; @0x9f = Var3; @0x9d = Var4; @0xa0 = Var4;
       
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп OK. Новый пробег записан.";
        
    }
}
