[Dashboard\Ford\Ka D780973]

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

Form 
{
    Group("Пробег",10,13,120,80)
    {
        Digit(Distance," ",5,18,70);
        Label(lbkm,"КМ",90,20);
        
    }
    Group("Информация",5,100,270,45) 
    {
        Label(msg," ",0,18);
    }    
    Group("Описание",5,150,270,90) 
    {
        Label(lb1,"Калькулятор пробега для Ford Ka.",0,20);
		Label(lb2,"D780973 internal EEPROM",0,40);
             
    }
    Picture(Logo,"Ford.bmp",170,24,0,0);
    
}

OnShow 
{
       if(@0xe0 != @0xe2)
       {
        msg.Color = 0x0000FF;
        msg.Bold = 1;
        msg = "Неверный дамп.";
       }
       else
       {
        Var0 = 0; Var1=0xC0; Var2=0xC1; Var3=0; Var4=0;
        while(Var1 != 0xe0)
         {
          Var3 = (@Var1<<8)|@Var2;
          if(Var3>Var0) {Var0 = Var3;}
          Var1= Var1+2; Var2= Var2+2;
         }
        Var4= (@0xE0 << 16)|Var0;
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп ОК. Введите новый пробег.";
        Distance= Var4*10000/163667;
       }
}

OnApply
{
    Var0 = Distance;
	 Var1 = 0;			// инидкатор ошибки
	 if(Var0 < 100) {Var1 = 1;}
	 if(Var0 > 999900) {Var1 = 1;}
	 if(Var1 != 0)
	 {
         msg.Color = 0x0000FF;
         msg.Bold = 1;
         msg = "Пробег должен быть от 100 до 999900 км";
         }
         else
         {
		Var0 = Var0 * 163667/10000;
		Var10 = (Var0 >> 16) & 0xFF;
                Var11 = 0xE0;
                while(Var11 != 0x100)
                {@Var11 = Var10; Var11 = Var11 + 2;}
                Var12 = Var0 & 0xFFFF; Var12 = Var12 - 16;
                Var13 = 0xC0; Var14 = 0xC1;
                while(Var13 != 0xE0)
                {@Var13 = (Var12>>8)& 0xFF; @Var14 = Var12 & 0xFF;
                 Var12 = Var12 + 1; Var13 = Var13 + 2; Var14 = Var14 + 2; }
		msg.Color = 0xff0000;
                msg.Bold = 1;
		msg = "Новый пробег записан. Дамп ОК.";	
	 }
}