[Dashboard\Renault\Twingo\Twingo ST6245 Var2]

Size(280,250); 

Form
{
    Group("Пробег",5,5,140,50)
    {
        Digit(Distance," ",5,18,90);
        Label(lb1,"KM",110,20);
    }
        
     Group("Информация",5,58,270,45)
    {
        Label(message," ",0,18);
    }
    Group("Описание",5,105,270,100) 
    {
        Label(lb4,"Калькулятор для Renault Twingo.",0,20);
        Label(lb5,"ST6245 internal EEPROM",0,35);
        Label(lb2,"Введите нужное значение в окне ПРОБЕГ",0,55);
        Label(lb3,"и нажмите кнопку <Применить>.",0,70);
    }
    Picture(Picture1,"Renault.bmp",200,5,0,0);
}

OnShow 
{
    Message.Bold = 1;
    Var0 = 0;
    Var1 = (@0x04 * 10000) + (@0x03 * 100) + @0x02;
 
 // Проверка контрольных сумм
    Var2 = ((((0xFC + @0x04) + @0x03) + @0x02) & 255) ^ 0xff;
    if (@0x07 != Var2) {Var0 = 1;}
    if(Var0 != 0)
    {
        message.Color = 0x0000FF; 	
        Message = "Неверный дамп!";     
        Distance = 0;                   
    }
    else
    {
        message.Color = 0xFF0000;                    
        message = "Дамп ОК. Введите новый пробег."; 
        Distance =  Var1;  
    }                          
}

OnApply
{
    Message.Bold = 1;
    Var0 = 0;
    Var1 = Distance; 
    if(Var1 < 100)      { Var0 = Var0 + 1; }
    if(Var1 > 999900)   { Var0 = Var0 + 1; }

    if(Var0 != 0)
    {
        message.Color = 0x0000FF; 
        Message = "Пробег должен быть от 100 до 999900 км.";
    }
    else
    {
      
        Var0 = Distance;
        Var1 = Var0 / 10000;
        Var2 = (Var0 - (Var1 * 10000)) / 100;
        Var3 = Var0 - (Var1 * 10000) - (Var2 * 100);
        @0x04 = Var1; @0x03 = Var2; @0x02 = Var3;
        @0x0c = Var1; @0x0b = Var2; @0x0a = Var3; 
        @0x07 = ((((0xFC + @0x04) + @0x03) + @0x02) & 255) ^ 0xff;  
        @0x0f = ((((0xFC + @0x0c) + @0x0b) + @0x0a) & 255) ^ 0xff;     
        message.Color = 0xFF0000;  
        message = "Новый пробег записан. Дамп ОК.";
    }
}





















