[Carradio\PHILIPS\CCR2006 GM0206]

Size(380,530);  

Form {
    HexDigit(Code,"Code",70,15,100,4);
    ComboBox(CodeRequest,"Code request",32,45,100,"On","Off");
    CheckBox(ResetCounter,"Clear error counter",82,75);
    Label(lb1,"Code calculator for PHILIPS :",10,100);
    Label(lb2,"Model: CCR2006 2DIN GM0206",10,120);
    Label(lb3,"Sec. Type:  CODE 0000-9999",10,140);
    Label(lb4,"Manufacturen: Philips",10,160);
    Label(lb5,"Partnumber: 24 420 602",10,180);
    Label(lb6,"MCU: P87C560EFB/01",10,200);
    Label(lb7,"EEPROM: 24C16",10,220);  
    Label(lb8,"Autor:  telik@ukrwest.net   2008",10,240);
    Label(lb9,"Test: SSM (telik@ukrwest.net)",10,260);
    Label(lb10,"Enter code: ",10,280);
    Picture(Logo,"Philips.bmp",200,100,0,0);
    Picture(Logo1,"ccr2006.bmp",30,300,0,0);
}

OnShow {
	var0=@0x0079;		// считываем первых 2е цифры кода
	var1=@0x007A; 		// считываем вторых 2е цифры кода
	var2=var0 ^ 0x007E;	// ксорим первых 2е цифры кода
	var3=var1 ^ 0x009C;	// ксорим вторых 2е цифры кода
	var12=var2 << 8;	// сдвигаем
	var13=var3 ;		// присваиваем
        var21=@0x0088; 		// считываем ячейку с запросом кода
	var22=@0x0089; 		// считываем ячейку со счётчиком попыток
	ResetCounter = var22;	// присваиваем ResetCounter сожержимое счётчика попыток
	if(var21 = 0) { CodeRequest = 1; }	// проверяем состояние запроса кода
	if(var21 = 1) { CodeRequest = 0; }  	// проверяем состояние запроса кода
	if(var22 = 10) { ResetCounter = 0; }	// проверяем состояние счётчика попыток
	Code = var12 |var13;	// присваиваем коду содержимое
}

OnApply {
	if(CodeRequest = 1) { @0x0088 = 0; }  		// проверка и запись запроса кода 0 - оключён
	if(CodeRequest = 0) { @0x0088 = 01; } 		// проверка и запись запроса кода 1 - включён
	if(ResetCounter != 0) { @0x0089 = 10; }		// проверка и запись счётчика попыток: 0А - норма
}
