Все зависит от того, сколько бит в екстенте. Если вот это верно:
то сдвигов должно быть всего 4 а не 5. И тогда, либо первый RLA должен быть после PUSH AF (т.е. два байта поменять местами) либо один RLA после POP AF убрать. Возможно это ошибка разрабов и изначально все должно было быть по первому варианту. А оошибку сразу не выявили потому что не было столько объемов. Или я не прав?Код:; For random i/o, set the fcb for the desired record number ; based on the 'r0,r1,r2' bytes. These bytes in the fcb are ; used as follows: ; ; fcb+35 fcb+34 fcb+33 ; | 'r-2' | 'r-1' | 'r-0' | ; |7 0 | 7 0 | 7 0| ; |0 0 0 0 0 0 0 0 | 0 0 0 0 0 0 0 0 | 0 0 0 0 0 0 0 0| ; | overflow | | extra | extent | record # | ; | ______________| |_extent|__number___|_____________| ; also 's2'
PS Я вот думаю, может натянуть какую досю на мой МХ2?
- - - Добавлено - - -
Стоп, а сдвиг то влево а не вправо. Причем через С. Так что 5 это нормально.




Ответить с цитированием