DisplayLen literally '8',
Display(DisplayLen) byte,
Blank literally '0',
CharConvert(*) byte constant (3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,
80h,00h,37h,39h,73h,76h,77h,7dh),
/* 0,1,2,3,4,5,6,7,8,9,., ,П,С,Р,Н,А,Б */
Timer0: procedure interrupt 1 using 2;
TL0=Low(mSec10); /* Reload timer0 */
TH0=High(mSec10);
Scan=(Scan+1) mod DisplayLen;
Digit=Blank;
ScanPort=Scan or 11111000b; /**********************************/
Digit=CharConvert(Display(Scan));
end timer0;