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

Полигон-2

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

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

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

Полигон-2 »   Бывший СССР »   Концепт 1801ВМ1
RSS

Концепт 1801ВМ1

Неторопливая вольная фантазия в рамках приличий

<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 7 8 9 10 11 * 12 13 14 15
Печать
 
Anonymous
Advanced Member


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


Ссылка


Дата регистрации на форуме:
22 нояб. 2011
MM написал:
[q]
Вообще нет данных об самой затее.
[/q]
Вот тут http://bk0010.org/forum/?id=15886 сообщение от TheGWBV@ - 08.04.2016 18:54
Mixa
Member


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


Ссылка


Дата регистрации на форуме:
8 авг. 2009
Запрограммировал загрузчик в ПЗУ по адресу 173000. Проверил на четырех разных IDEшных дисках, успешно грузит первый сектор в начало памяти и передает туда управление. В тех секторах мусор с точки зрения процессора, в HALT вываливается в итоге по разным причинам. Однако, похоже, что всё работает.

Фотки напоследок.
Этажерка в сборе:


и готовая к софтовым экспериментам система:


Расклад регистров получился такой:
177400 DMA CSR
177402 DMA счетчик слов
177404 DMA адрес начала блока
177406 Обращение к ATA CS1FX
177410 (байт) Обращение к ATA CS3FX
177411 (байт) Задание адреса на шине ATA
177412 Прерывания CSR
177414 Прерывания вектор A (от DMA)
177416 Прерывания вектор B (от ATA)

Device handler требует задания CSR устройства и вектора прерывания. Как такового ATA CSR в получившемся раскладе нету. И вектор прерывания не один, а два их. Размышляю, как лучше поступить. Вопрос в том, что такое на самом деле указываемый CSR устройства. Если это просто базовый адрес блока управления устройством, работа с которым индивидуальна для каждого устройства, то это одно. Если это адрес универсальной структуры с обращением к ней универсальным способом, и вдруг это где-то параметризуется, то это другое, и в моем случае не проходит. Лучше, чтобы было первое.

Вторая непонятка с двумя векторами прерывания. Не разобрался еще с механизмом инициации вектора прерывания, но все равно возникает вопрос со вторым вектором, его нужно как-то инициировать.
Есть ли какой-нибудь способ для драйвера до начала его использования вызвать код его инициализации, который резидентом не остается?
MM
Advanced Member


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


Ссылка


Дата регистрации на форуме:
2 авг. 2013
Mixa написал:
[q]
Есть ли какой-нибудь способ для драйвера до начала его использования вызвать код его инициализации, который резидентом не остается?
[/q]
Вам необходимо ознакомиться с следующим доком :

"Программирование внешних устройств Руководство программиста 00008-01.33.01-2"

Скан его найдете на моем форуме-справочнике из подписи ниже по тексту.



Если кратко и по существу - начальную подготовку регистров и векторов производит начальный загрузчик в 173000, он вычитывает 0 блок тома, при этом сообщая номер тома и имя драйвера. В 000000 блоке тома тоже желательно повторить процедуру инициализации регистров и векторов, т.к. понадобится подпрограмма чтения блоков тома по номеру блока - более подробно в брошуре.
Mixa
Member


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


Ссылка


Дата регистрации на форуме:
8 авг. 2009
MM написал:
[q]
"Программирование внешних устройств Руководство программиста 00008-01.33.01-2"
Скан его найдете на моем форуме-справочнике из подписи ниже по тексту.
[/q]
Спасибо! Как-то сходу его там не нашел среди остального собрания, но судя по структуре оглавления это перевод RT-11 Software Support Manual. Он есть, его и почитаю.


MM написал:
[q]
Если кратко и по существу - начальную подготовку регистров и векторов производит начальный загрузчик в 173000, он вычитывает 0 блок тома, при этом сообщая номер тома и имя драйвера. В 000000 блоке тома тоже желательно повторить процедуру инициализации регистров и векторов, т.к. понадобится подпрограмма чтения блоков тома по номеру блока - более подробно в брошуре.
[/q]
Начальный загрузчик 173000 я сделал совсем простым, про прерывания он ничего не знает.
Насчет векторов - гляну .DRVTB, это для Multi-Vector handlers, похоже, то, что нужно.
Anonymous
Advanced Member


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


Ссылка


Дата регистрации на форуме:
22 нояб. 2011
Mixa написал:
[q]
Начальный загрузчик 173000 я сделал совсем простым,
[/q]
Он таким и должен быть. Это называется аппаратный загрузчик и его задача скачать с устройства в память первичный загрузчик, передав тому только номер привода, с которого грузились.
Далее первичный загрузчик, содержащий первичный драйвер, вычитывает с устройства вторичный загрузчик, сообщает ему точку входа в первичный драйвер, номер привода и имя устройства.
После чего вторичный загрузчик, используя первичный драйвер грузит в память основной драйвер и сам монитор ОС. Вторичный загрузчик вам не надо писать, он входит в состав монитора ОС и при установке системы на диск копируется программой dup из файла монитора в блоки устройства со 2го по 5й.
Mixa
Member


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


Ссылка


Дата регистрации на форуме:
8 авг. 2009
Тут обнаружил, что то, чем управляет DW.MAC, очень похоже на WD1010, почти. Команды чтения-записи-форматирования-рекалибровки те же, почти все биты состояния на месте, так же работает с буфером сектора. А DMA, хе-хе, у него нету :)
И прикол, (наверное в стиле PDP?) в подпрограмму передачи сектора как параметр передается машинная команда, которая, исполняясь в этой подпрограмме, передает сектор туда или сюда, в зависимости от того, чтение это сектора или запись. Надо обдумать такой приемчик.

У себя девайс назову WD. Так понял, что оно любое двухбуквенное, лишь бы уникальное?

А номер ID для девайса тоже любой, лишь бы уникальный? (варианты, 0 как у RK, или 53 как у DW)
MM
Advanced Member


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


Ссылка


Дата регистрации на форуме:
2 авг. 2013
Вариант, как одним драйвером окучить резиновый объем носителя - в SET - параметрах прописать номер физического массива ( который по 32 метра ), из ~65534 возможных, для томов WD1...WD7.
А том WD0 целесообразно оставить фиксированным.
_Patron_
Member


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


Ссылка


Дата регистрации на форуме:
19 дек. 2012
Mixa написал:
[q]
У себя девайс назову WD. Так понял, что оно любое двухбуквенное, лишь бы уникальное?
[/q]
Да.


Mixa написал:
[q]
А номер ID для девайса тоже любой, лишь бы уникальный?
[/q]
Типа.
По сути - вряд ли на что-то влияет.
Anonymous
Advanced Member


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


Ссылка


Дата регистрации на форуме:
22 нояб. 2011
Mixa написал:
[q]
У себя девайс назову WD.
[/q]
А так уже драйвер для УКНЦ называется, смотрите, чтоб путаницы не возникло. Украинский драйвер ideшника, который под киевский контроллер на здоровенной плате и рассыпухе - WA, драйвер под контроллер, который клуб наш продаёт - WQ. У себя я, чтоб не путать DW от Э85/Pro3x0 с ДВКшным DW, последний WW называю в системах собираемых.
Mixa
Member


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


Ссылка


Дата регистрации на форуме:
8 авг. 2009
Anonymous написал:
[q]
А так уже драйвер для УКНЦ называется
[/q]
Вот незадача. Проект изолированный, но мало ли что. Тогда попробую XD :) Или DA. Или AD, как во фряхе.
<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 7 8 9 10 11 * 12 13 14 15
Печать
Полигон-2 »   Бывший СССР »   Концепт 1801ВМ1
RSS

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

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

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