Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   нужно опознать XT материнку, ошибка real-time clock error
RSS

нужно опознать XT материнку, ошибка real-time clock error

<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 * 7 8
Печать
 
Ethereal
Newbie


Откуда: Петрозаводск
Всего сообщений: 19
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
9 июня 2016
Из кода материнского BIOS следует :

Если подключать винчестер к разъему IDE на материнке, то материнка
поддерживает 4 типа винчестеров. Тип винчестера выбирается двумя
какими-то перемычками/переключалками на плате. Наверно.
Точно не знаю.
Во всяком случае читается байт из порта 322h и из этого байта тип
винчестера определяют только 2 бита. Получается всего 4 варианта.
Наверное этот порт - это состояние перемычек. Даже почти наверняка.
Хотя вариант с чтением этого байта из памяти микросхемы реального
времени с батарейкой все-же пока не исключен.

Таблицы параметров этих четырех типов винчестеров расположены в BIOS
с адресов F000:E314 F000:E324 F000:E334 F000:E344

Мы там видим :
Цилинров Головок
614 4
804 2
804 4
614 4

Черт возьми, а две таблицы-то одинаковые. Значит всего поддерживается
разных типов IDE-винчестеров только три.

alecv написал:
[q]
В ней похоже есть Setup c установкой времени, типа флопов и винта.
[/q]
Нету там установки типа винта. Увы. Возможные параметры трех типов винчестеров жестко зашиты. Есть только готовый сервис по низкоуровневому форматированию винтов. Получается так.
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
Ethereal написал:
[q]
Нет. Ты не пишешь прямо из BIOS в файл.
[/q]
Да, здесь я погорячился, прямо на диск писать можно, только устанавливая адрес
буфера обмена с HDD/FDD на интересующие адреса BIOS (здесь или писать
посекторно, без файловой системы, или работать с ФС вручную), а записать на диск
информацию меньше размера сектора вообще невозможно.


Ethereal написал:
[q]
Это потому, что Си за тебя думает.
[/q]
А за тебя думает int0x40/int0x13/DOS. DOS тоже имеет настраиваемую буферизацию.


Ethereal написал:
[q]
И мы имеем дело именно с этим "некоторым BIOS-ом"
[/q]
Это противоречит здравому смыслу. Если бы нельзя было читать BIOS без буфера, его
код просто не мог бы быть исполнен.Я думаю дело просто в баге реализации int0x40
и/или int0x13. Предлагаю не использовать вообще сервисы DOS и BIOS, а просто
сохранить посекторно на дискету/HDD, работая с HDD/FDD через регистры.

Или намного проще - для облегчения работы можно просто сделать вывод областей
BIOS на экран - уже будет видно корректность дампа, а для сохранения перенаправить
вывод в файл. Здесь можно я думаю испорльзовать сервисы DOS/BIOS для работы с
экраном, но для чистоты эксперимента можно и напрямую (тогда перенаправить
вывод в файл не получится. В принципе, для вывода дампа на экран через сервисы
DOS можно просто DEBUG воспользоваться.
Ethereal
Newbie


Откуда: Петрозаводск
Всего сообщений: 19
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
9 июня 2016
i8088 написал:
[q]
Я думаю дело просто в баге реализации int0x40и/или int0x13.
[/q]
А я тебе про что ? Если на данном компе вызвать int 0x13/0x40 (или равно функцию 40h сервиса MS-DOS, которая все равно к int 13h обратится /хотя вот тут вот я не знаю напрямую ли DOS перекинет адрес в BIOS или будет гонять данные по своим буферам/) с адресом данных для записи в сегменте F000, то запишется хрень какая-то. Я думал будет понятно, что я именно об этом и говорю.

Причем бага эта почти наверняка из-за того, что при записи работает не родной обработчик int 13h/40h материнки, а обработчик из не родного материнке расширения BIOS от MFM-контроллера.

Да и черт-то с ним в чем тут причина. Факт, что указываем адрес данных для записи что для DOS, что для BIOS в сегменте F000 и получается ерунда. Значит надо сначала скопировать данные в буфер в ОЗУ и функцию записи вызывать уже для данных в этом буфере.
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
Ethereal написал:
[q]
Я думал будет понятно, что я именно об этом и говорю.
[/q]
Мне это совсем не было понятно из текста в предыдущих сообщениях.

Я поддерживаю, что возможно виноват BIOS MFM контроллера. Надо попросить автора
сделать это сохранение на floppy, и для чистоты эксперимента вытащить из платы MFM
controller, чтобы его расширение int0x13 убрать.
fre6lime
Newbie


Всего сообщений: 70
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 нояб. 2015
uav1606 написал:
[q]
fre6lime, пробовали при загрузке жать что-то вроде Ctrl+Alt+Esc? Попадалсь мне отдалённо похожая XT-шка, там была как раз такая комбинация.
Можно и другие клавиши с Ctrl+Alt попробовать.
[/q]
Тут все реверс-инжиниринг биоса устраивают, а он пришел и разрулил :)
Ctrl+Alt+Esc сработало, и я увидел сокровенное:



Как и писал alecv поддерживает один 1.44мб флоп. Также стало понятно как пользоваться встроенным контроллером xt-ide:



Выбрать параметры диска не дает, можно только список бедов ввести. Скорее всего имеет место некий автодетект, из тех 3-х типов винчейстеров, про которые писал Ethereal.
Дата и время нормально устанавливается и что крайне приятно дос их отлично читает из биоса без спец. утилиты.
На всякий случай прикрепил дамп полченный через bios256.exe.

Прикрепленный файл (BIOS256.ROM, 262144 байт, скачан: 22 раза)
Ethereal
Newbie


Откуда: Петрозаводск
Всего сообщений: 19
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
9 июня 2016
Вот здорово. :)
Путь к решению задачи вышел весьма замысловатым, причем к финишу привел совершенно неожиданный поворот :)
fre6lime
Newbie


Всего сообщений: 70
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 нояб. 2015
В принципе больше по этой материнке вопросов серьезных нет. Не смог найти перемычку для турбо и назначение остальных джамперов не ясно, но это уже мелочи :)
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
fre6lime, вот это да! Отлично!


fre6lime написал:
[q]
Дата и время нормально устанавливается и что крайне приятно дос их отлично читает из биоса без спец. утилиты.
[/q]
Выходит DOS не работает с портами 0x70/0x71, а использует прерывание int0x26 int0x1A
(функции от 2 до 7), которые вообще появилось в AT, но на этой XT есть?
fre6lime
Newbie


Всего сообщений: 70
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 нояб. 2015
i8088 написал:
[q]
Выходит DOS не работает с портами 0x70/0x71, а использует прерывание int0x26,
которое вообще появилось в AT, но на этой XT есть?
[/q]
Похоже на то. Дос 5.0 увидел дату сразу после загрузки. Причем y2k проблеме этот биос не подвержен.
Насколько я понял эта плата из совсем поздних. По датам - самое начало 90-х. Тогда во всю at уже использовались, вот скорее всего попытались аналогичное что-то изобрести с биосом, ide-контроллером и поддержкой at клавиатуры.
fre6lime
Newbie


Всего сообщений: 70
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 нояб. 2015
И вообще всем спасибо огромное! Даже не наделся на такую поддержку, когда создавал топик ;)
<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 * 7 8
Печать
Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   нужно опознать XT материнку, ошибка real-time clock error
RSS

1 посетитель просмотрел эту тему за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS