* adfPos2DataBlock * */
| 625 | * |
| 626 | */ |
| 627 | int32_t adfPos2DataBlock(int32_t pos, int blockSize, |
| 628 | int *posInExtBlk, int *posInDataBlk, int32_t *curDataN ) |
| 629 | { |
| 630 | int32_t extBlock; |
| 631 | |
| 632 | *posInDataBlk = pos%blockSize; |
| 633 | *curDataN = pos/blockSize; |
| 634 | if (*posInDataBlk==0) |
| 635 | (*curDataN)++; |
| 636 | if (*curDataN<72) { |
| 637 | *posInExtBlk = 0; |
| 638 | return -1; |
| 639 | } |
| 640 | else { |
| 641 | *posInExtBlk = (pos-72*blockSize)%blockSize; |
| 642 | extBlock = (pos-72*blockSize)/blockSize; |
| 643 | if (*posInExtBlk==0) |
| 644 | extBlock++; |
| 645 | return extBlock; |
| 646 | } |
| 647 | } |
| 648 | |
| 649 | |
| 650 | /* |