[Dashboard\Alfa Romeo\147\147 D780828]

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

Form {
    Group("Пробег",35,13,120,50)
    {
        Digit(Distance," ",5,18,70);
        Label(lbkm,"КМ",90,20);
    }
    Group("Информация",5,80,270,45) 
    {
        Label(msg," ",0,18);
    }    
    Group("Описание",5,130,270,90) 
    {
        Label(lb1,"Калькулятор пробега для Alfa Romeo 147.",0,20);
        Label(lb2,"NEC D780828 VDO.",0,35);
        Label(lb3,"Введите нужное значение в окне <Пробег>.",0,50);
        Label(lb4,"Нажмите кнопку <Применить>.",0,65);
    }
     Picture(Logo,"alfa.bmp",190,12,0,0);
}

OnShow 
{
      
      if(@0x01 = @0x03)
       {
        Var0 =0; Var1 = 0x01; Var2 = 0;
        while(Var0 != 0x10)
        {Var2 = Var2 +(((@Var1 << 8)|@Var0) ^ 0xFFFF); Var1 = Var1 + 2; Var0 = Var0 + 2;}
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп ОК. Введите пробег.";
        Distance = Var2;
        }
       else
        {
        msg.Color = 0x0000FF;
        msg.Bold = 1;
        msg = "Неверный дамп!";
        Distance = 0;
        } 
}

OnApply {
    Var5 = 0;
    Var2 = Distance;
    Var7 = (Var2 / 16) ^ 0xFFFF;
    if(Var2 > 999900) {Var5 = 1;}

    if(Var5 != 0)
    {
        msg.Color = 0x0000FF;
        msg.Bold = 1;
        msg = "Пробег должен быть до 999900 км";
    }
    else
    {
        Var10 = 0;
        while(Var10 != 0x10)
         {@Var10 = Var7 & 0xFF; Var10 = Var10 + 1;
          @Var10 = (Var7 >> 8) & 0xFF; Var10 = Var10 + 1;}
            msg.Color = 0xFF0000;
            msg.Bold = 1;
            msg = "Новый пробег записан.";
        }
    }
}
