PDA

Просмотр полной версии : Приготовление загружаемой CF карты для УКНЦ



vldmr
04.08.2018, 17:31
Имеется свежесобранная карта совмещенного контроллера НГМД и ЖД для УКНЦ объявленного здесь (http://zx-pk.ru/threads/27612-sovmeshchennyj-kontroller-ngmd-i-zhd-dlya-uknts.html). Я пытаюсь создать загружаемую CF карту с помощью ПК путем записи образа диска. Файлы с образом диска я брал из архивов http://hobot.pdp-11.ru/EMULATORS/UKNCBTL_HDD/uknc_hdd_id/uknc_hdd_id.rar и http://hobot.pdp-11.ru/EMULATORS/UKNCBTL_HDD/uknc_hdd_wd/ukncbtl_hdd_wd.rar.

Я подключал CF карту через USB адаптер к компьютеру с линуксом и копировал файл с образом диска напрямую на карту следующей командой:

dd if=WDC170inv_P.img of=/dev/sdb
Дальше вставлял карту в УКНЦ и из меню "ЗАГРУЗКА" выбирал "2 - кассета ПЗУ". Экран очищается, курсор прыгает в левый верхний угол, и далее ничего не происходит.

Настораживает то, что светодиод на платке не мигает, но может быть при чтении загрузочного блока он мигает слишком быстро, чтобы заметить.

Я также пытался загрузиться с образов, инвертированных утилитой RT11DSK следующей коммандой:

RT11DSK/rt11dsk.exe hi id/WDC170inv_P.img
Результат тот же.

Если попытаться загрузиться не вставляя CF карту в плату, на экран выводиться осмысленное сообщение:

WDROM V01.10 by Oleg H.

?WDROM-F-Обрыв шлейфа
Светодиод без CF тоже не горит во время паузы между первой строкой сообщения и второй. Я бы предположил, что он должен гореть.

Пока что я попробовал 3 разных карты - на 8ГБ, 4ГБ и 32МБ. Эти конечно не исключает полностью проблемы совместимости CF карты. Но прежде чем добывать ещё другую CF карту, хотелось бы обзавестись образом диска, про который заведомо известно, что он работает с этим контроллером.

Буду благодарен, если кто нибудь подкинет такой файл, да и за общие советы по отладке данной платки.

Не уверен, что это важно, но на плату я только поставил компоненты контроллера ЖД, с дискетами мне связываться очень не хочется.

xolod
04.08.2018, 19:34
Возможно прошивка РЕ3 испортилась.

MacBuster
04.08.2018, 19:49
Удаление в знак протеста против действий MM

dk_spb
04.08.2018, 20:50
"ЗАГРУЗКА" выбирал "2 - кассета ПЗУ". Экран очищается, курсор прыгает в левый верхний угол, и далее ничего не происходит.
Должна быть заставка ПЗУ контроллера. Если её нет - разбираться с содержимым CF карты бессмысленно.

- - - Добавлено - - -

Если заставка без CF есть, а с CF пропадает, то надо разбираться с железом.
Не помню влияет ли на это джампер. У меня чаще всего в таких случаях помогало пропаять CF слот (точнее у меня это помогало в 99% всех случаев ;-) )

vldmr
05.08.2018, 06:59
Всё правильно, проблема была именно с железом, и именно с CF слотом, но в моём случае дело было не в тривиальной непропайке. В общем, щас я расскажу историю, за которую мне пожизненно будет стыдно, но зато многие над ней душевно посмеются. А кому то она может быть и поможет.

Короче, на плату я поставил разьём CF, купленный у китайцев для другого проекта, куда он не подошёл физически - дырочки для винтиков не совпадали. А к обсуждаемой платке этот разьём подошёл как родной. Но когда я вставлял в него карточки, было какое то ощущение, что что то не так. И после всех предыдущих советов я внимательно присмотрелся к монтажу и осознал в холодном поту, что карточка в слот вставляется вверх ногами - ярлычком к монтажной плате.

Перепроверка распиновки подтвердила. что карточка втыкалась задом наперёд. За отсутствием другого разьёма я рещил просто обработать боковые пазы на припаянном слоте напильником, и воткнуть карту в предназначенной ей ориентации. После этого и светодиод замигал, и загрузка продвинулась гораздо дальше - до вопроса о номере boot-раздела.

Правда, загрузиться пока всё равно не удалось, возможно в связи со следующим сообщением в процессе загрузки:

?WDROM-W-Ошибка контрольной суммы
То бишь, похоже, что РЕ3 таки прокисла. Но это отдельная история.

Что однако имеет отношение к данной теме, это вопрос об загружаемом образе. Похоже что правильный образ находится в архиве http://hobot.pdp-11.ru/EMULATORS/UKNCBTL_HDD/uknc_hdd_wd/ukncbtl_hdd_wd.rar, так как версия файла прошивки ide_wdromv0110.bin совпадает с версией на загрузочном экране (WDROM V01.10 by Oleg H.) Единственно что неясно - это нужно ли использовать для записи на CF карту инвертированный(?) файл WDC170inv_P.img, или его правильно разинвертировать, например утилитой rt11dsk.

Если бы кто нибудь, у кого есть загружаемая CF карта, работающая с WD контроллером, мог бы вставить её в ПК и посмотреть, состоит ли первый блок преимущественно из нулей, или же наоборот из байтов FF, то такая информация помогла бы окончательно разрешить поднятый вопрос. Заранее спасибо

dk_spb
05.08.2018, 11:38
1) это бывает. На "инверсные" CF слоты я тоже наступал.
2) если бы РЕ3 прокисла - у Вас бы заставки не появлялось. Вот RF2 может и надо проверить.
3) в эмуляторе УКНЦ если "поставить" в слот 1 прошивку и выбрать файл WDC170inv.img - идёт ругань
А если выбрать файл rt57c_wd.img нормальная загрузка.
Так что Вы можете проверить рабочесть Вашего образа в эмуляторе.

vldmr
05.08.2018, 15:58
2) если бы РЕ3 прокисла - у Вас бы заставки не появлялось. Вот RF2 может и надо проверить.
А, кстати, как проверить? Я обе микросхемы получил вместе с платкой уже прошитыми. А где можно взять файлы прошивок?

dk_spb
05.08.2018, 16:10
Пришлите в ЛС e-mail - вышлю файлы прошивок.
Хотя их и тут в глубинах форума точно можно найти.
А проверить - самое простое - на программаторе. Чисто теоретически и РФ2 и РЕ3 доступны в УКНЦ программно, но это совсем не ко мне.

Я бы на Вашем месте начал проверку с проверки образа в эмуляторе. может и микросхемы не надо будет проверять

vldmr
05.08.2018, 16:21
Я бы на Вашем месте начал проверку с проверки образа в эмуляторе. может и микросхемы не надо будет проверять
В эмуляторе образ проверял, работает, это собственно, образ выложенный Никитой Зиминым для эмулятора. Для платки этот файл (теоретически) напрямую может быть не пригоден, если данные с шины идут в IDE без инверсии.

MacBuster
05.08.2018, 16:25
Удаление в знак протеста против действий MM

MM
06.08.2018, 23:21
Осциллографом проверьте все линии данных канала IDE ( 16 шт .) - при переворачивании флеш-карты какие-то разряды ИС на контроллере могли пригореть.
ИС буферов с подозрением на пробой лучше сменить.
*
Или опубликуйте дамп загруженного 0 сектора, адреса 000000....000100 ( 8 ) - по внешнему виду восьмеричных слов можно будет предположить неисправность линий данных флешки/IDE .
Гуру УКНЦ могут меня поправить в отношении адреса начальной загрузки 0 сектора тома IDE/флешки.

dk_spb
06.08.2018, 23:31
Не, вроде от переворота ничего не пригорает. Я делал так пару раз ;-)

nzeemin
07.08.2018, 01:08
"Ошибка контрольной суммы" -- это драйвер говорит о том что в первом секторе винчестера не совпала вычисленная контрольная сумма с тем что в двух последних словах первого сектора. Проверил это испортив контрольную сумму. Но при этом загрузка продолжается, это только Warning.
В плане инверсии, образ заливаемый на CF-карту должен быть такой, что большинстово байтов первого сектора содержат FF.
Напомню вот про эту страничку, возможно будет полезно: https://github.com/nzeemin/ukncbtl-doc/wiki/IDE-HDD-ru
Выводится ли приглашение "Номер boot-раздела"? из скольки разделов предлагает выбрать и сколько реально есть?

vldmr
07.08.2018, 05:06
MM: насчёт проверки линий мысль очень дельная - я пока отлаживаю, питаю компик от лабораторного питания, так что сразу обратил внимание,что после переворота карточки ток сократился на 300 мА, куда-то то они стекали. Однако, я тоже обратил внимание, что когда карточка прописана правильным инвертированным образом, то "Ошибка контрольной суммы" не выдаётся, то бишь первый сектор считывается правильно.

Больше того, почитавши форумы, я обратил внимание, что WD-драйвер полагается на данные по геометрии, считанные из первых двух байтов первого сектора. Стал я проверять гипотезу,что загрузка обламывается потому, что драйвер использует неправильную геометрию, и проверял её тем,что менял эти первые два байта по разным соображениям. Так вот, изменение этих байт в образе, не выдавшем ошибки контрольной суммы, приводит к появлению этой ошибки. Что из общих математических соображений опять таки подтверждает, что сектор читается правильно.

Вопрос "Номер boot-раздела" также выводится, на правильно инвертированном образе предлагает выбрать из 5, на неправильных из 7 (причем выбрать не даёт, сам автоматом выбирает 0 и виснет после того)

На данный момент "неправильная геометрия" - это моя предпочтительная гипотеза. В оригиналом образе записано 34 сектора на дорожку/10 головок. А что там эти CF карты о себе думают, это не известно. Я считывал геометрию одной и той же карты в USB адаптере и с PCMCIA адаптере, в обоих случаях результаты дико различны (124 головы/62 сектора в USB, 1 голова/64 сектора в PCMCIA).

Вобщем, не зная какую геометрию докладывает о себе ЦФ карта без промежуточных адаптеров, невозможно приготовить правильный образ диска. Соответственно, похоже, что "Приготовление загружаемой CF карты" на ПК объявленное в теме - это концептуально неправильный подход. Нужно не выпендриваясь подключить флопарь и действовать, как все нормальные люди. Чем я теперь и собираюсь, скрепя сердце, заняться (очень уж я не люблю дискет, сколько они мне крови за всю жизнь попортили, может пора подумать о готеке).

MacBuster
07.08.2018, 08:04
Удаление в знак протеста против действий MM

nzeemin
07.08.2018, 13:32
vldmr, ну вообще логика подсказывает что можно подцепить эту CF к PC по IDE и какой-нибудь утилитой посмотреть что за геометрия там возвращается от карточки.

vldmr
07.08.2018, 15:30
Увы, в данный момент нет ни готека, ни переходника с CF на IDE. Готек только что купил, будет месяц ехать из Китая. А переходник как то вроде не особо полезен, кроме данного случая.

vldmr
08.08.2018, 05:30
:) Таки сработала эта хреновина. И гипотеза оказалась правильной: действительно, для успешной загрузки с образа, прописанного на CF карту на ПК нужно изменить первые два байта образа в соответствии с реальной геометрией, докладываемой картой.

Я вспомнил, что есть у меня в хозяйстве одно устройство, в котором карта подключается напрямую без адаптеров. Устройство, однако, довольно экзотичное: карманный ПК HP Jornada 720 (https://ru.wikipedia.org/wiki/HP_Jornada#Jornada_720) с операционкой NetBSD (https://ru.wikipedia.org/wiki/NetBSD) установленной на CF карту (https://wiki.netbsd.org/tutorials/how_to_install_netbsd_on_hpcarm/). Так что мой опыт вряд ли поможет многим напрямую, но общая идея ясна.

Я скопировал карту из хорнады на карту, предназначенную для УКНЦ, вставил её в хорнаду, загрузился с неё, и запустил fdisk, который доложил мне (в разделе "NetBSD disklabel disk geometry") 16 голов, 63 сектора на трек. Записав эти значения в инвертированном виде (C0 EF) в первые два байта карточки с инвертированным образом и вставив её в УКНЦ, я и глазом не успел моргнуть, как машинка загрузилась в RT11.

На самом деле, эту информацию о геометрии при достаточном умении, можно было бы получить на самой УКНЦ, отработав команду Identify Device. Так как эта команда следует тому же протоколу, что и команда Read Sector(s), используемая WD-драйвером, то (теоретически) для этого можно было бы вызвать из монитора соответствующую подпрограмму драйвера. Однако моих слабых сил на это не хватило, очень уж он заумно написан.

А кроме того, я и так уже счастлив, всё, хватит писать, пойду кнопки в RT11 нажимать, вспоминать молодость. Спасибо за внимание

dk_spb
08.08.2018, 08:55
можно было бы получить на самой УКНЦ
УКНЦшная утилита разбивки дисков эту инфу выдает.

vldmr
08.08.2018, 15:30
УКНЦшная утилита разбивки дисков эту инфу выдает.

Это да, но речь то идет о машинке, которая еще не имеет средств запускать программы под осом, так что из доступных средств имеется только монитор.

nzeemin
08.08.2018, 20:28
На самом деле, эту информацию о геометрии при достаточном умении, можно было бы получить на самой УКНЦ, отработав команду Identify Device.

Я тоже об этом думал, что не помешала бы такая утилита -- дёрнуть одну команду и прочитать "сектор", вывести на экран часть инфы.
Периодически сюда приходят люди с вопросом "как мне завести винчестер, дайте для этого программу которую можно загрузить с магнитофонного входа".

xolod
24.09.2018, 14:43
Странное дело, вот такую ошибку у меня выдает на одной УКНЦ а на другой загружается.
https://thumb.ibb.co/dfbj7U/20180924_143616.jpg (https://ibb.co/dfbj7U)

MacBuster
24.09.2018, 21:10
Удаление в знак протеста против действий MM

hobot
25.09.2018, 05:19
xolod, не может 0 раздел работать на одной машине и не работать на другой )
В строке WdBoot: должен быть не - ,а ОК

По сообщению и правда похоже что файл монитора нечитабельным стал,
загрузитесь с соседнего раздела (или с дискеты где есть WD.SYS и WDR.SAV) и поправьте загрузку системными средствами - это лучше всего.

- - - Добавлено - - -


То бишь, похоже, что РЕ3 таки прокисла.
http://archive.pdp-11.org.ru/ukdwk_archive/ukncbtlwebcomplekt/Other/OlegH_WD/

l добавил ссылку на старую тему
http://zx-pk.ru/threads/12218-vinchester-uknts.html