ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Была такая ORDOS-5. Вот в ней предусматривалась контрольная сумма. Заносилась она в ячейки 0DH, 0EH.
При считывании контрольная сумма проверялась, если была ошибка, то выводилось соответствующее сообщение.
Больше. Представьте, что надо поменять два байта в середине большого файла. Получается, ОС должна пересчитать КС? А если еще надо поменять, и еще? Смысл теряется. Тогда, получается нужно вводить блочное хранение и КС для каждого блока, а если уж делать блочное хранение (и файл как цепочку блоков), то и файловую систему нормальную: допускающую фрагментирование файла и в ОС нормальные функции, а не урезанные как в Ордос. Т.е. за ниточку потянешь, и вот Ордос вся распустилась, как вязаная варежка. Хоть пятой хоть десятой версии. Ордос имеет смысл только как она есть в версии 4, в чем меньше, тем лучше объеме ПЗУ. А для реальных пацанов были и нормальные реализации ОС в ПЗУ для Ориона - да хоть та же питерская RamDOS от Казимирчака ЕМНИП 1991 года выпуска, с нормальной организацией эл. диска, т.е. не кучкой обособленных дисков по 60к.
Последний раз редактировалось Error404; 16.12.2015 в 12:32.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
В ПЗУ как раз меньше всего нужда в проверке к/с, т.к. это R/O-память, там ничего попортиться не может в принципе, а проверка целостности данных делается один раз - на этапе прошивки программатором.
Таковая проверка актуальнее всего для ГМД, где теоретически данные могут портиться. Хотя лично я ни разу не сталкивался с некорректным чтением сектора на ГМД. Сектор либо не читается вообще (такое бывает), либо читается и там всегда то, что нужно.
Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел
Нет, я не прав. Посмотрел описание, проверяются файлы на всех квазидисках. О дисководе речи нет.
Надо попробовать в действии, ради любопытства.
Тоже решил покопаться. Вариант для Орион-128 похоже не рабочий (из 7-мой страницы обращается к F836, а та на выходе включает нулевую страницу). А вот вариант для Орион-Про запустился, но там тоже есть свои тараканы. Проще всего залить на ROM-диск файл ORD6$.BRU, однако там по умолчанию выбран винчестер, конфигурационные файлы соответственно не грузятся, но ДОС всё-же пытается выполнить их из того места в памяти, куда они должны были грузиться (после того как выбран диск A - ROM-диск). В результате ничего хорошего не происходит, т.к. конец файла должен быть отмечен точкой с новой строки (т.е. байты 0D 2E), а такое сочетание маловероятно в неинициализированной памяти. В исходниках версии для Орион-128 есть обработка этой ошибки, там в самое начало этого буфера точка записывается.
Но есть возможность обойти загрузку конфигурационных файлов, надо просто держать нажатой какую-нибудь клавишу (благо после запуска ДОС она долго пытается загрузить сектор с винчестера). В исходниках можно найти распределение дисков по умолчанию:
A - ROM диск
B,C,D,G - квазидиски страниц 1,2,3,6
E,F - винчестер
H,I - дисковод
Мой эмулятор опознаёт файлы размером ровно 720Кб как образ диска с 9-ю секторами по 512 байт, таким образом можно взять образ диска формата FAT12 данного размера (задав расширение .odi или добавив его расширение в конфиг), и тогда этот диск будет доступен как H или I. Туда можно записать SG610.COM (хотя я грузил его в эмуляторе прямо в память в отладчике). После запуска SG610 спросит, на какой диск записывать ORDOS.SYS, нужно указать например Н, после чего этот диск будет загрузочным. Орион-Про с него прекрасно грузится. Можно и из режима Орион-128 загрузиться, если закинуть на ROM-диск файл BOOT4$.BRU.
Что касается версии для Орион-128, её видимо тестировали на Орион-Про с другим биосом (тем же, что и для Орион-Про), в котором п/п F836 не переключает страницу, а использует дополнительные возможности Орион-Про (16Кб окно).
Исходники на диске не все, нет утилит и версии SG610 для Орион-Про. Файлы с подчёркиванием - для Орион-128, с апострофом - для Орион-Про (или для обеих версий?).
- - - Добавлено - - -
Кстати, в этой версии ORDOS в заголовке .BRU по смещению 0Dh хранится дата, формат такой
Код:struct Date { unsigned day:5; unsigned month:4; unsigned year:7; // from 1980 }
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)