[Dashboard\Isuzu\Trooper 93C46]

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(msg," ",0,18);
    }
    Group("Описание",5,105,270,100) 
    {
        Label(lb2," Введите нужное значение в окне ПРОБЕГ ",0,55);
        Label(lb3,"и нажмите кнопку <Применить>.",0,70);
        Label(lb4,"Калькулятор пробега для Isuzu Trooper.",0,20);
        Label(lb5,"EEPROM: 93C46",0,35);
    }
    Picture(Picture1,"Isuzu.bmp",155,10,0,0);

}

OnShow
{
    Msg.Bold = 1;
    Var0 = 0;
    Var1 = (@0x60 << 8) | @0x61;
    Var2 = (@0x62 << 8) | @0x63; Var2 = Var2 ^ 0xffff;

    if(Var1 != Var2)  { Var0 = Var0 + 1;}
    if(Var0 != 0)
    {
        msg.Color = 0x0000FF;
		msg.Bold = 1;
		msg = "Неверный дамп!";
		Distance = 0;

    }
    else
    {
    Var3 = (@0x64 << 8) | @0x65; Var4 = (@0x68 << 8) | @0x69; Var5 = (@0x6c << 8) | @0x6d;
    Var6 = (@0x70 << 8) | @0x71; Var7 = (@0x74 << 8) | @0x75; Var8 = (@0x78 << 8) | @0x79;
    Var9 = (@0x7c << 8) | @0x7d;
         msg.Color = 0xFF0000;
            msg.Bold = 1;
            msg = "Дамп ОК. Введите новый пробег."; 
            Distance =  (((((((Var1 + Var3) +Var4) + Var5) + Var6) + Var7) + Var8) + Var9) *2;
        
    }
}

OnApply
{
    Var1 = Distance;

    Var0 = 0;
    if(Var1 < 100)      { Var0 = Var0 - 1; }
    if(Var1 > 999900)   { Var0 = Var0 - 1; }
    if(Var0 != 0)
    {
        msg.Color = 0x0000FF;
        msg.Bold = 1;
        msg = "Пробег должен быть от 100 до 999900 км"; 

    }
    else
    {
       Var1 = Var1 / 16;
       Var10 = 0x7f;
       while(Var10 != 0x5f) 
        {
            @Var10 = (Var1 & 255) ^0xFF; Var10 = Var10 - 1;
            @Var10 = ((Var1 >> 8) & 255) ^0xFF; Var10 = Var10 - 1;
            @Var10 = Var1 & 255; Var10 = Var10 - 1;
            @Var10 = (Var1 >> 8) & 255; Var10 = Var10 - 1;
        }
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп OK. Новый пробег записан.";


    }
}


