[Dashboard\Mercedes\Vito\Vito 908AZ60]

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

Form 
{
    Group("Пробег",35,13,120,50)
    {
        Digit(Distance," ",5,18,70);
        Label(lbkm,"КМ",90,20);
    }
    Group("Идентификация",5,80,270,65)
    {
        Label(part," ",0,20);
        Label(part1," ",0,40);
    }
    Group("Информация",5,145,270,45) 
    {
        Label(msg," ",0,18);
    }    
    Group("Описание",5,190,270,90) 
    {
        Label(lb1,"Калькулятор пробега для Mercedes Vito.",0,20);
        Label(lb2,"Процессор MC68HC08AZ60 (2J74Y, 4J74Y, 1J35D).",0,35);
        Label(lb3,"Введите нужное значение в окне <Пробег>.",0,50);
        Label(lb4,"Нажмите кнопку <Применить>.",0,65);
    }
    Picture(Logo,"Mercedes.bmp",180,8,0,0);
}



OnShow 
{
	part = "PART MB: "+"A"+#b.@0x100+#b.@0x101+#b.@0x102+" "+#b.@0x103+" "+#b.@0x104+"   DATE: "+#b.@0x164+"/"+#b.@0x165+"/"+#b.@0x166;
        part1 = "HW: "+#b.@0x12a+"-"+#b.@0x12b+"     SW: "+#b.@0x12c+"-"+#b.@0x12d;
        // проверяем правильность дампа
        
        Var0 = (@0x01 << 16);
        Var0 = Var0 + (@0x02 << 8);
        Var0 = (Var0 + @0x03);         
         
        Var5 = 0;
	if(Var0 > 999000) {Var5 = 1;}
        if(Var0 < 100)   {Var5 = 1;}
        if(Var5 = 0)
        {
                msg.Color = 0xFF0000;
                msg.Bold = 1;
                Distance = Var0;
                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
    {   
       Var4 = 1;
       while(Var4 != 0xC9)
        {
        @Var4 = (Var1 >> 16) & 0xFF; Var4 = Var4 + 1;
        @Var4 = (Var1 >> 8) & 0xFF; Var4 = Var4 + 1;
        @Var4 = Var1 & 0xFF; Var4 = Var4 + 2;
        
        @Var4 = ((Var1 >> 16) & 0xFF) ^ 0xFF; Var4 = Var4 + 1;
        @Var4 = ((Var1 >> 8) & 0xFF) ^ 0xFF; Var4 = Var4 + 1;
        @Var4 = (Var1 & 0xFF) ^ 0xFF; Var4 = Var4 + 2; 
        }
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп OK. Новый пробег записан.";
        
    }
}
