[Dashboard\Ford\Mustang\Mustang 9S12DJ128]

Size(280,270);

Form 
{
    Group("Пробег",12,10,120,45)
    {
        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,"Калькулятор пробега для Ford Mustang.",0,20);
        Label(lb2,"9S12DJ128 internal EEPROM.",0,35);
        Label(lb3,"Введите нужное значение в окне <Пробег>.",0,50);
        Label(lb4,"Нажмите кнопку <Применить>.",0,65);
    }
    Picture(Logo,"Ford.bmp",160,15,0,0);
}

OnShow 
{
	if (@0x1a0 != 0xFF)
	{
		Var2 = 0;
		Var0 = 0x405;
		while (Var2 != 1)
		{
			Var0 = Var0 + 1;
			if (@Var0 != 0xFF) {Var2 = 1;}
		}
		Var1 = (@0x400 << 16) | (@0x404 << 8) | @Var0;
		msg.Color = 0xFF0000;
		msg.Bold = 1;
		msg = "Дамп ОК. Введите пробег.";
		Distance = (Var1 * 1609) / 10000 ;
	}
	else
	{
		msg.Color = 0x0000FF;
		msg.Bold = 1;
		msg = "Неверный дамп!";
		Distance = 0;
	} 
}

OnApply 
{
	Var3 = Distance;
	Var1 = 0;			
	if(Var3 > 999900) {Var1 = 1;}
	if(Var1 != 0)
	{
		msg.Color = 0x0000FF;
		msg.Bold = 1;
		msg = "Пробег должен быть до 999900 км";
	}
	else
	{
		Var3 = (Var3 * 10000) / 1609;
		Var2 = 0;
		Var0 = 0x405;
		while (Var2 != 1)
		{
			Var0 = Var0 + 1;
			if (@Var0 != 0xFF) {Var2 = 1;}
		}
		Var4 = 0x400;
		@Var4 = Var3 >> 16; Var4 = Var4 + 4;
		@Var4 = Var3 >> 8;  Var4 = Var0;
		@Var4 = Var3 & 255;
 
		Var2 = 0;
		Var0 = 0x4d5;
		while (Var2 != 1)
		{
			Var0 = Var0 + 1;
			if (@Var0 != 0xFF) {Var2 = 1;}
		}
		Var4 = 0x4d0;
		@Var4 = Var3 >> 16; Var4 = Var4 + 4;
		@Var4 = Var3 >> 8;  Var4 = Var0;
		@Var4 = Var3 & 255; 
		Var2 = 0;
		Var0 = 0x5a5;
		while (Var2 != 1)
		{
			Var0 = Var0 + 1;
			if (@Var0 != 0xFF) {Var2 = 1;}
		}
		Var4 = 0x5a0;
		@Var4 = Var3 >> 16; Var4 = Var4 + 4;
		@Var4 = Var3 >> 8;  Var4 = Var0;
		@Var4 = Var3 & 255; 

		msg.Color = 0xff0000;
		msg.Bold = 1;
		msg = "Новый пробег записан. Дамп ОК.";	
	}
}