Я скачал последнюю версию, но там еще нету разделения на
- агат7 +140 в 3 слоте
- агат7 +840 в 5 слоте?
И да, что-то не в порядке ИКП-1 например не грузится автоматом, только после сброса в мониор и C500G...
Щас... Спою..........
Ничего в целом, только по отдельности:
- о каком, на всякий случай, драйвере идёт речь? Чтобы предметнее было. То есть, ИКП-бейсик, РАПИРа, .......... ?
- есть такой вариант: FF&SYNC 95 6a vol track sect 5a aa aa aa aa aa a4 FF&SYNC 6a 95 .....
- там что-то такое было.... В общем, нужно учитывать, что драйвер ждёт синхро, но это ожидание тоже требует времени.
- фрагмент реального диска с ИКП (предположительно форматировался копировщиком ИКП):
AA AA 00+01 00+01 00+01 95 6A 00+00 0B 00+00 5A AA AA AA AA AA A4 00+01 00+01 00+01 6A 95 9B
(числа с "+" - это как бы один шаг: 00+01 - sync, 00+00 - просто ноль)
- фрагмент реального диска (предположительно, форматировался по init hello):
AA AA AA A4 00+01 95 6A FE 27 14 5A AA AA AA AA AA A6 00+01 AA AA AA AA A4 00+01 6A 95
Так что кто как хочет так и форматит.
Тут ещё нужно учитывать, что в реальности, свежеформатированный диск и диск, с перезаписанными полями данных могут отличаться: в т.ч. может проскочить несколько синхро (Тот, который записывался форматтером и при последующей записи. Возможен синхросбой и за счёт разрушения gap-байт).
ИКП-Бейсик-7:
0CFF - A9 20 .. ")." LDA #20
0D01 - 85 26 .. ".." STA 26
0D03 - C6 26 .. "F." DEC 26
0D05 - F0 37 .. "П." BEQ 0D3E
0D07 - 9D 8A C0 "..@" STA C08A, X
0D0A - BD 86 C0 "=.@" LDA C086, X Ждем sync
0D0D - 0A .. .. "." ASL A
0D0E - 30 FA .. ".З" BMI 0D0A
0D10 - BD 84 C0 "=.@" LDA C084, X
0D13 - 20 ED 0A ".М." JSR 0AED Читаем пролог
0D16 - C9 95 .. "I." CMP #95
0D18 - D0 E9 .. "PИ" BNE 0D03
0D1A - 9D 8A C0 "..@" STA C08A, X
0D1D - 20 ED 0A ".М." JSR 0AED
0D20 - C9 6A .. "Iй" CMP #6A
0D22 - D0 DF .. "P_" BNE 0D03
0D24 - A0 02 .. " ." LDY #02
0D26 - 20 ED 0A ".М." JSR 0AED
0D29 - 99 2D 00 "..." STA 2D, Y Читаем поля
0D2C - 88 .. .. "." DEY
0D2D - 10 F7 .. ".В" BPL 0D26
0D2F - 20 ED 0A ".М." JSR 0AED
0D32 - C9 5A .. "Iz" CMP #5A
0D34 - D0 CD .. "PM" BNE 0D03
0D36 - BD 86 C0 "=.@" LDA C086, X Проверяем, что не было сбоя синхро
0D39 - 0A .. .. "." ASL A
0D3A - 10 C7 .. ".G" BPL 0D03
0D3C - 18 .. .. "." CLC
0D3D - 60 .. .. "ю" RTS Выходим, совершенно ничего больше не проверяя и не ожидая
Дальше исполняется примерно 20 команд без обращения к флопу.
Затем ждем поля данных:
0A80 - A0 30 .. " ." LDY #30
0A82 - 9D 8A C0 "..@" STA C08A, X
0A85 - 88 .. .. "." DEY 2 такта
0A86 - F0 56 .. "Пv" BEQ 0ADE 3 такта (или 2 ?)
0A88 - BD 86 C0 "=.@" LDA C086, X 4 такта
0A8B - 0A .. .. "." ASL A 2 такта
0A8C - 30 F7 .. ".В" BMI 0A85 3 такта
Итого, он будет ждать (2 + 3 + 4 + 2 + 3) * 30 = 420 тактов, такт как раз микросекунда, значит столько и ждём. На дорожке обычно байт 7070 примерно, 200000 микросекунд на оборот, получается где-то 30 микросекунд на байт. Получается, за время ожидания может проскочить где-то байт 20, что всяко с запасом при размере GAP в пять-шесть байт. Проверяйте, может я где-то ошибся в цифрах.
---------- Post added at 08:38 ---------- Previous post was at 08:34 ----------
ЗЫ !!! Сейчас сообразил: 7070 байт - это полный цикл форматтера, перекрывающий дорожку (т.е. он пишется не 200, а 203 мкс, чтобы гарантированно переписать старое содержимое).
Размер AIM-дорожки меньше, 6464 байта. Почему так - не помню, но цифра была получена не случайно, я её долго подбирал чтобы работали особо изощренные Бадеровские защиты и креаторы этих защит. Возможно, это связано с тем, что 7070 - это цифра, предполагающая размер синхросбоя как 1 байт, но, возможно, это не так. К сожалению, пока что физический формат записи 840кб дисков никем не описан и не изучен (видимо, кроме разработчика).




Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 

