[Dashboard\Toyota\Sequoa - 93C46 Yazaki]

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

Form
{
    Picture(Picture1,"Toyota.bmp",180,5,0,0);
    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,"Калькулятор пробега для Toyota Sequoa.",0,20);
        Label(lb5,"EEPROM: 93C46, панель Yazaki meter",0,35);
    }
}

OnShow
{
    Msg.Bold = 1;

    // --------------- проверяем правильность дампа
    Var0 = 0;
    Var1 = (@0x7E << 8) | @0x7F;

    if(Var1 != 0xAA55)  { Var0 = Var0 + 1;}
    if(Var1 != 0x55AA)  { Var0 = Var0 + 1;}

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

    }
    else
    {
        Var0 = @0 | (@1 << 8);
        if(Var0 < 0xFFFF)
        {
            Var0 = Var0 * 48;
            msg.Color = 0xFF0000;
            msg.Bold = 1;
            msg = "Дамп ОК. Введите новый пробег."; 
            Distance =  Var0;
        }
        else
        {
            msg.Color = 0x0000FF;
		msg.Bold = 1;
		msg = "Неверный дамп!";
		Distance = 0;

        }
    }
}

OnApply
{
    Var1 = Distance;

    Var0 = 0;
    if(Var1 < 100)      { Var0 = Var0 - 1; }
    if(Var1 > 999900)   { Var0 = Var0 - 1; }
    if(Var1 < 100)      { Var0 = Var0 - 1; }

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

    }
    else
    {
        Var2 = 0;
        Var3 = 0;
        Var0 = Var1 / 48;
        while(Var2 < 96)
        {
            @Var2 = Var0;       Var2 = Var2 + 1;
            @Var2 = Var0 >>8;   Var2 = Var2 + 1;
        }
        msg.Color = 0xFF0000;
        msg.Bold = 1;
        msg = "Дамп OK. Новый пробег записан.";


    }
}







