Ну, я тщательно не мерил, прикрутил таймер к компилятору и перекомпилировал систему несколько раз. Вроде, выходит чуть быстрее.
Чтобы понятнее было, о чем речь. Было:
## Код:
```
PROCEDURE  Read;
  IF ~(pos in cache) THEN
    ...
    filereader.SetPos(filepos);
    filereader.ReadBytes(cache,cpos,clen);
   ...
  END;
  res:= cache[cpos]
END Read;
```

стало:
## Код:
```
PROCEDURE  Read;
  filereader.SetPos(filepos);
  filereader.ReadByte(ch);
  res := ch;
END Read;
```
