BLK
while (h < hfree + (HEADSZ/BLK))
if ((++ip & (BLK - 1)) == 0) {
j = (filep)i * BLK + ENV_BLK * BLK;
if (!((++offset) & (BLK - 1))) {
if (wbfi >= BLK)
if ((woff & (~(BLK - 1))) == (roff & (~(BLK - 1))))
#define blisti(i) (((i)-ENV_BLK*BLK) / BLK)
if (ip == NBLIST*BLK) { /* for rdtty */
j = ip & ~(BLK - 1);
if (read(ibf, (char *)rbuf, BLK * sizeof(tchar)) <= 0)
i = rbuf[ip & (BLK-1)];
i = rbuf[ip & (BLK-1)];
if ((p & (BLK - 1)) == 0) {
if ((i = p & ~(BLK - 1)) != roff) {
if (read(ibf, (char *)rbuf, BLK * sizeof(tchar)) == 0)
return(rbuf[p & (BLK-1)]);
if ((p & (BLK - 1)) == 0) {
tchar corebuf[(ENV_BLK + NBLIST + 1) * BLK];
tchar wbuf[BLK];
tchar rbuf[BLK];
pushi(NBLIST*BLK, PAIR('r','d'));
#define RD_OFFSET (NBLIST * BLK)
#define ENV_BLK ((NEV * sizeof(env) / sizeof(tchar) + BLK-1) / BLK)
#define LBLK2SEC(BLK, SHF) (daddr_t)((BLK) >> (SHF))