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

Полигон-2

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

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

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

Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Не могу считать Debug-ом дамп в память из Mazovia CM1914
RSS

Не могу считать Debug-ом дамп в память из Mazovia CM1914

<<Назад  Вперед>> Страницы: 1 2
Печать
 
sanders
Advanced Member
Профессионал

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


Ссылка


Дата регистрации на форуме:
26 мар. 2008
Предыстория тут:
http://www.phantom.sannata.ru/...mp;t=15895
Мне понадобилось считать Debug-ом все ПЗУ-шки в файлы, чтобы сличить их с оригинальными прошивками, взятыми из той темы.
Считывал стандартным способом:
rbx
2000 (длина)
n a:\basic.f6
w f600:0000
Комп пишет: Writing 2000 bytes, и вроде бы все ОК.
Так я считал все ПЗУ по адресам F600, F800, FA00, FC00, FE00(BIOS).
Каково же было мое удивление, когда в файлах оказалась белиберда. Я сравнивал то, что видел на экране: -d F600:0000 и содержимое одноименного файла. Там ни одного схожего байта нет. Даже, переставлял полубайты местами - нет совпадений.
Я проверил системную дискету на вирусы (хотя я всегда держу окошки защиты открытыми).
Я предположил, что я что-то путаю, вытащил другую ХТ-ху (noname) и 386ю. Из них такими же командами ПЗУ считались корректно.
Я предположил, что Мазовия не понимает дискеты 3,5" 720КБ и поставил 5" 360КБ флоп.
Не помогает! В файлы идет белиберда. В файле BIOSа вообще нет текстовых строк Warsava MIKROROMPUTERI и т.д.
Уже, когда лег спать, я подумал, что не проверил последнюю идею: Я ведь всегда использую в качестве контроллера флопа обычную 16-битную мультяху, висящую в воздухе старшими контактами. И по всем теориям она должна работать на ХТ в режиме 360/720. И в других ХТ до сих пор она работала. Так может BIOS Мазовии хочет чего-то иного? Но файлы читаются/копируются нормально! Команда Copy con a:\123.txt создала вполне корректный файл из моих нажатий. Чем же debug отличается?
Вечером вставлю контроллер флопа с собственным BIOS-ом, чтобы писать средствами BIOS контроллера, а не BIOS материнской платы. И потом идеи закончатся.
Есть еще идеи? (ну кроме как считывать программатором)
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
Попробуйте сохранить F-seg моей программой, а потом уже разделите с помощью любого hex-editor.

Прикрепленный файл (bios64.exe, 13639 байт, скачан: 13 раз)
sanders
Advanced Member
Профессионал

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


Ссылка


Дата регистрации на форуме:
26 мар. 2008
По времени разбирательства с любым редактором, мне проще перешить 4 микросхемы.
Но теперь хочется понять с чем я столкнулся.
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
С тем же, что недавно осуждалось в теме про XT с V30 и AT keyboard и
XT IDE, Вы по моему там участвовали даже. Там тоже DEBUG не сохранял.

А Ваша идея про Floppy контроллер со своим BIOS - вполне может сработать.
alecv
Advanced Member


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


Ссылка


Дата регистрации на форуме:
5 окт. 2004
У некоторые мамок/BIOS-ов не работает DMA в верхней части памяти. Сначала надо перенести блок памяти "вниз", а потом записывать.
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
alecv, при чем здесь DMA, мы же не используем DMA controller при сохранении
F_segment debug-ом.
sanders
Advanced Member
Профессионал

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


Ссылка


Дата регистрации на форуме:
26 мар. 2008
И еще для размышления о верхней памяти.
Во время проверки на вирусы на этой же материнке drweb-ом 90х годов, он уверенно стал проверять память свыше 640Кб, хотя на материнке установлено 640КБ. То ли DOS ему не сообщает сколько всего памяти, то ли действительно с механизмом верхней памяти какая-то беда.
Контроллер FDD с BIOS-ом еще не проверял. Вечером проверю и отпишусь
alecv
Advanced Member


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


Ссылка


Дата регистрации на форуме:
5 окт. 2004
i8088 написал:
[q]
alecv, при чем здесь DMA, мы же не используем DMA controller при сохранении
F_segment debug-ом.
[/q]
Контроллеры флопика и MFM в конечном итоге используют DMA для записи.
uav1606
Advanced Member


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


Ссылка


Дата регистрации на форуме:
16 янв. 2008
i8088 написал:
[q]
alecv, при чем здесь DMA, мы же не используем DMA controller при сохранении F_segment debug-ом.
[/q]
Debug для сохранения использует BIOS, а BIOS этой материнки вполне может использовать для записи на флоппи DMA. Мне кажется, предположение alecv вполне разумное. Нужно попробовать сначала скопировать этот фрагмент в нижнюю память (командой m), а потом уже записывать на флоппи оттуда.
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
uav1606 написал:
[q]
Debug для сохранения использует BIOS, а BIOS этой материнки вполне может использовать для записи на флоппи DMA.
[/q]
alecv написал:
[q]
Контроллеры флопика и MFM в конечном итоге используют DMA для записи.
[/q]
А ну тогда да, приношу свои извинения! Неплохо еще посмотреть выдачу дампа BIOS на экран,
командой d.
sanders
Advanced Member
Профессионал

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


Ссылка


Дата регистрации на форуме:
26 мар. 2008
Команда d - работает. Любая область ПЗУ выводится на экран, и она похожа на достоверную. По этому я и сужу о том, что в файл записывается белиберда.
uav1606
Advanced Member


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


Ссылка


Дата регистрации на форуме:
16 янв. 2008
sanders, попробуйте сначала что-то вроде m F600:0000 2000 CS:100, а потом уже w.
Кроме того, Вы правильно инициализируете регистры перед w? У Вас в примере почему-то BX заполняется, а длина должна быть в паре BX:CX, причём младшее слово в CX.
BX при этом нужно обнулить.
sanders
Advanced Member
Профессионал

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


Ссылка


Дата регистрации на форуме:
26 мар. 2008
Да, там опечатка с регистрами.
Использую CX, но знаю, что debug сам обнуляет при запуске все регистры, в т.ч. BX.
Все делал правильно и не раз.
Контроллер 1,2/1,44 со своим BIOS-ом не помог.
Команда m F600:0000 2000 5000:0000 и затем запись с 5000:0000 помогла.
Цели я достиг. Все 4 микросхемы бэйсика у меня местами отличаются от исходников в сети, почему он не стартует я понял.
Но я так не понял при чем тут DMA и почему процессор, адресующий 1Мб памяти не может считать любой кусок памяти на дискету.
Если бы виновата была бы DOS с ее ограничениями, тогда на других бы материнках тоже не читалось бы.
uav1606
Advanced Member


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


Ссылка


Дата регистрации на форуме:
16 янв. 2008
Возможно, соответствующие адресные линии вообще не заведены на контроллер DMA, если разработчики посчитали, что не будет необходимости использовать DMA при доступе к памяти выше 640 КБ. alecv точнее скажет.
alecv
Advanced Member


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


Ссылка


Дата регистрации на форуме:
5 окт. 2004
Скорее BIOS кривой и неправильно программирует контроллер DMA i8237.
Контроллер флопа i8272 в PC-архитектуре работает при активном участии контроллера DMA i8237.
Если формально, можно и без DMA, но флоповый INT 13 написан с использованием DMA.
<<Назад  Вперед>> Страницы: 1 2
Печать
Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Не могу считать Debug-ом дамп в память из Mazovia CM1914
RSS

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

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

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