[Dashboard\Smart\Roadster\Roadster BCM Siemens 9s12dg256 var2]


Size(280,310); 

Form 
{
    Group("Пробег",5,13,165,50)
    {
        Digit(Distance," ",5,18,60);
        Label(lbkm,"КМ",80,20);
       
    }
    Group("Идентификация",5,80,270,45)
    {
        Label(partmb," ",0,18);
    }
    Group("Информация",5,125,270,45) 
    {
        Label(Message," ",0,18);
    }    
    Group("Описание",5,175,270,90) 
    {
        Label(lb1,"Калькулятор пробега для Smart Roadster BCM",0,20);
        Label(lb2,"9s12DG256 mask (2K79X) internal EEPROM.",0,35);
        Label(lb3,"Введите нужное значение в окне <Пробег>.",0,50);
        Label(lb4,"Нажмите кнопку <Применить>.",0,65);
    }
    Picture(Logo,"Mercedes.bmp",185,8,0,0);
}

OnShow 
{
    Message.Bold = 1;  
    Var0 = 1;
    if (@0xBCA != 0x57) {Var0 = 0;}
    if (@0xBCB != 0x4D) {Var0 = 0;}
    if (@0xBCC != 0x45) {Var0 = 0;} 	
    if (Var0 = 0)
    {
        message.Color = 0x0000FF;
        Message = "Неверный дамп!";
        Distance = 0;
    }
    else
    {
    Var5 = (@0x8F6 << 16) | (@0x8F7 << 8) | @0x8F8;
     
    message.Color = 0xFF0000;
    message.Bold = 1;
    message = "Дамп ОК. Введите новый пробег.";
    Distance = Var5;
    partmb = "VIN: "+#c.@0xbCA+#c.@0xbCB+#c.@0xbCC+#c.@0xbCD+#c.@0xbCE+#c.@0xbCF+#c.@0xbD0+#c.@0xbD1+#c.@0xbD2+#c.@0xbD3+#c.@0xbD4+#c.@0xbD5+#c.@0xbD6+#c.@0xbD7+#c.@0xbD8+#c.@0xbD9+#c.@0xbDA;
    }
}
    
OnApply
{
    Var0 = 1;
    if (@0xBCA != 0x57) {Var0 = 0;}
    if (@0xBCB != 0x4D) {Var0 = 0;}
    if (@0xBCC != 0x45) {Var0 = 0;} 
    if (Var0 = 0)
    {
        message.Color = 0x0000FF;
        Message = "Неверный дамп! Запись прекращена!";
        Distance = 0;
    }
    else
    {
    Var5 = 0;
    Var2 = Distance;
    if(Var2 > 999900) {Var5 = 1;}
    if(Var2 < 0)   {Var5 = 1;}
    if(Var5 != 0)
    {
        message.Color = 0x0000FF;
        message.Bold = 1;
        message = "Пробег должен быть от 100 до 999900 км";
    }
    else
    { 
       Var2 = Var2;
       Var0 = 0x8F6;
        @Var0 = Var2 >>16; Var0 = Var0 +1;
        @Var0 = Var2 >>8; Var0 = Var0 +1;
        @Var0 = Var2 & 255; 
       Var0 = 0xC52;
        @Var0 = Var2 >>16; Var0 = Var0 +1;
        @Var0 = Var2 >>8; Var0 = Var0 +1;
        @Var0 = Var2 & 255; 
            
       message.Color = 0xFF0000;
       message.Bold = 1;
       message = "Новый пробег записан.";
    }
   }
}













