История одной прошивки : (
Цитата:
Сообщение от fan Посмотреть сообщение
Угу , и где это в и-нете лежит ?
Цитата:
Сообщение от Mikka_A Посмотреть сообщение
Дада !
присоеденюсь к автору!
Документацию в студию!!!
Прошивка Матлаша-Авряты v1.35 распространялась в виде исходников в архиве GLUK63SCR.RAR в фидо, а также можно её скачать с сайта Alone Coder'а вместе с исходниками прошивки Глюка 6.3. Кто скачал этот архив, у того она уже есть
Только документации там нет...
Работают программы, использующие обращение #3D13 (но не все, где-то ~70%)
"Инструкция" по сборке прошивки из исходников:
В архиве 3 файлика в формате ALASM:
1)TRD530_B.H -этот файл компилируется в прошивку Бэйсик-48 (он просит стандартную 1982.ROM)
2)TRD530_A.H - этот файл компилируется в прошивку TR-DOS (он просит стандартную DOS504T.ROM и файл TRD503_A1.H)
3)TRD530_A1.H продолжение прошивки тр-дос.
В файле номер 2 надо выбрать,какой будет рам-диск: для Пентагона-1024 или
для Профи-1024, его длину и направление роста(снизу вверх(как в dos5.12m) или сверху вниз - как в Глюке и РеалКоммандере) или поменять на свой.
Рам-диск "сидит" на диске D:,если к диску D: не подключен образ на винте.
Далее можно компилировать.
Полученная прошивка состоит из двух кусков по 16кб (MROM135.ROM и 2000mz.ROM), которые прошиваются в ПЗУ вместо стандартных.
У меня на Пентагоне расположение страничек ПЗУ 64 Кб такое:
#0000-#3FFF GLUK 6.1r (Service ROM)
#4000-#7FFF MROM135 (TR-DOS)
#8000-#BFFF RC196HDD (BASIC-128)
#C000-#FFFF 2000mz (BASIC-48)
Теперь надо подготовить LBA-винт (на пц):
на пустой основной(первый) раздел, отформатированный как FAT-16(пока что ) надо записать файл длиной как минимум 128,5 Кб(а у меня он 6 мегабайт). Он должен быть непрерывным(для этого пишем на пустой раздел) и называться DNA_OS.SWP.
После этого можно записать кучу образов .TRD (можно рассортировать их по папкам) и сделать дефрагментацию раздела. Чтобы образы были непрерывными.
Затем подключить винт к Спектруму как Master;
Далее надо смонтировать ентот "файл подкачки" утилитой MOUNTSWP.SEP,она есть в архиве DNA0453j.RAR на страничке DNA по адресу
http://dnaos.nm.ru/DNA_NEMO.
То есть просто загрузить DNA с этого диска, зайти на винт в этот раздел и нажать
на этот файл кнопкой "M" (или левой кнопкой мыши,если мышь включена),после нажатия будет загружена утилита MOUNTSWP.SEP,которая сама запишет координаты этого файла во второй сектор(считая сектора с единицы) от начала винта.
<Версия DNA0.453j является "тестовой",поэтому для дальнейшей работы(т.е. для подключение образов) рекомендуется "стабильная" версия DNA0.450d - она есть по тому же адресу>
Подготовительный этап закончен,
теперь можно из оболочки DNA заходить на винт,
нажимать ENTER на нужном образе .TRD и он будет подключаться к дисководу A: - если он на правой панели и к дисководу C: - если он на левой панели (Эти номера дисковода можно изменить диск-доктором в файле SHELL.SEP вначале после цвета бордера два байта 2 и 0, адреса сейчас не помню).(Таким образом можно к диску B: подключить системный диск от Alone Coder'а с его сайта (SYS.TRD)).Если нет рам-диска - при обьёме памяти 128К - то подключить к диску D: какой-нибудь пустой TEMP.TRD - и распаковывать туда SCL-ки и т.д.
Короче,подключать образы, как рассказывал в прошлом сообщении.
Эта версия(v1.35) содержит следующие "документированные" ошибки:
1)Зависает после записи файла на CHS-винтах в некоторых программах - например в Реал Коммандере 1.96 в результате чего файлы можно копировать только по-одному,а в Perfect Commander 2(который в Глюке) копирует нормально хоть весь диск.На LBA-винтах всё ОК - более 8 месяцев юзаю
2) Не работают STS 7.xx (которые вместе с ALASM 5.xx) из-за модифицированного 48-го ПЗУ
3) По кнопке Magic на винт пишется снапшот(дамп 128-й памяти)(в тот самый файл DNA_OS.SWP). По кнопкам Symbol Shift+Magic файл оттуда загружается.
Ошибка в том,что неправильно определяется состояние прерываний и нормально работают те проги,у которых на момент сброса дампа прерывания были запрещены.
Тоже самое с экраном - включается первый экран.
И еще иногда не правильно определяется режим прерывания, там жёстко стоит, что при I=0 или I=#3F включается IM 1, иначе IM 2.
4) Не работает Черный Ворон,если запускать его с _ДИСКЕТЫ_!!! Не нравится ему что-то в ПЗУ TR-DOS.
5)При объёме HDD более 4 Гб показывает меньше 4-х (~3900Mb)
Как можно обойти эти ошибки?
1) Не использовать CHS-винт
2)Использовать STS ниже версии 7.xx - но они работают через #3d2f, поэтому файлы внутри образа трд будут не доступны из СТС-а.
3)Может когда-нибудь сделаю прожку,которая перед запуском будет показывать оба экрана,тыкаешь на нужный,причём если в верхней части,то будет EI, а в нижней -DI
4) Использовать вместо оригинальной версии Черного Ворона версию от Velesoft - там загрузчик через #3D13( а остальная игра через #3d2f) - с дискеты работает!!!
Еще была версия 1.38 с исправленным ошибкой 2 (STS 7.0 в ней работает) - но она не распространялась (вроде бы)
И еще одно замечание для тех, кто привык(как я) к "скоростной" прошивке TR-DOS 6.05E(и выше) - v1.35 с реальными дискетами работает (ну очень)медленно - всё-таки это TR-DOS 5.04.
И всё же, не смотря на указанные недостатки, пользоваться прошивкой можно
Единственное затруднение может вызвать несчастный случай - если удалить образ, подключенный к диску A: ,то при записи файла на это же место вместо каталога диска
будет виден мусор... И если в этом случае не удается загрузить DNA с винта (из Глюка или вот у меня вместо BASIC-128 прошивка RealCommander 1.96 с загрузчиком с винтов(master/slave при нажатии Reset+Space/S.Shift) - вдруг DNA на винте испортилась - при записи на винт элекричество отключили)...
Тогда надо в коммандной строке TR-DOS набрать команду "точка":
A>.
эта команда отключит образ от диска Ав памяти) т.е. до нажатия сброса.
После чего можно будет загрузить с дискеты DNA0.453j и подключить нужные образы
или установить DNA на винт еще раз.
В заключение данного опуса могу сказать,что уже есть версия 2.05(не тестировалась - она сырая и глючная,впрочем,как и все мои поделки ),но пока не рапространяется,т.к. продолжает разрабатываться.
Отличается она тем,что базируется на прошивке TR-DOS 6.11E от AlCo(бывшая 6.05E от CompoWellCome'99).
В ней работает Черный Ворон (с _ДИСКЕТЫ_) и STS 7.xx,скорость приличная,и программ больше работает (~90%),из неё собираюсь выкинуть поддержку CHS-винтов,думаю,как определять состояние DI/EI,
что будет дальше(и будет ли вообще) - не ведаю...