NuXT своими руками

Хотите показать, какую классную железяку добыли - вам сюда
Lyawon
Сообщения: 736
Зарегистрирован: Вс июн 21, 2020 6:38 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение Lyawon »

Lyawon писал(а): Вс июн 16, 2024 7:13 pm Никогда не имел дело с прошивкой микроконтроллеров и вот для NuXT понадобилось прошить pic12f629 прошивкой конвертора клавиатуры XTATKEY_094.
Расчехлил программатор T48, прочитал на всякий случай пустой контроллер и сохранил файл. Загрузил прошивку, нажал прошить и в конце выдало programming failed.
После этого контроллер при чтении выдаёт все нули, в том числе и свой ID.
Предполагаю, что всё это из-за не снятой птички "Erase Before".
Купил ещё пару контроллеров и снова сел за прошивку. На этот раз решил заливать по частям. Залил FLASH - ОК, читается с контроллера то, что записано. Залил EEPROM - тоже ОК.
Заливаю configuration word - ошибка верификации и контроллер снова при чтении выдаёт одни ноли. Решил проверить, а работает ли он? Поставил в плату - клавиатура работает %) Поставил первый контроллер, который ведёт себя так же - тоже работает.
Выглядит так, как будто бы активирована защита кода. Конфигурация выглядит так:
CW.png
CW.png (22.63 КБ) 719 просмотров
Защита - биты 7 и 8. Птичка не установлена - пишется единица.
Если я правильно понимаю, то /CP=1 это "НЕ защита кода = 1" т.е. защиты снята. Или я не правильно понимаю...
Lyawon
Сообщения: 736
Зарегистрирован: Вс июн 21, 2020 6:38 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение Lyawon »

Lyawon писал(а): Вт июл 16, 2024 12:07 am Ах да, я же там ещё в одном месте перерезал, когда чистил между контактами слота CF! Не забыть бы поправить, а то СF не будет читаться!
Это восстановлено.
Lyawon
Сообщения: 736
Зарегистрирован: Вс июн 21, 2020 6:38 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение Lyawon »

Добрались руки снова до этой NuXT.
Да, есть стандартный биос от Киселёва, работающий на этой плате - это комбинация 8088 BIOS (который включает в себя также поддержку дисководов) и XUB, который реализует поддержку IDE (в данном случае CF). Всё работет, но хочется красивого и морального удовлетворения естественно =) ну и выжать максимум из платы.
Поставил V20 (у меня есть парочку: один D70108C-8 СШП и D70108HCZ-10 Ниппония - оба стабильно работают на 9,5 мГц что не удивительно).
Далее - BIOS.
Поэтому план такой: GlaBIOS + Multi FLoppy + XUB.
Но есть нюанс.
Биосы от Киселёва (как 8088, так и MultiFloppy) обладают одной особенностью - у них есть setup utility, который вызывается по F2, где можно произвести настройки конфигурации и _сохранить_ (!) их прямо в BIOS. Да-да, не в CMOS (так как его нету), а прям в BIOS (естественно это можно сделать, если BIOS записан в EEPROM).
Итак, пишем в EEPROM так:
0000h - 2FFFh (12k) - XUB
3000h - 4FFFh (8k) - MultiFloppy
E000h - FFFFh (8k) - GlaBIOS
В такой ситуации Option ROMы (коими является XUB и MultiFloppy) инициализируются биосом по порядку - сначала XUB, потом MultiFloppy. Можно через F2 попасть в конфигурацию MultiFloppy, однако конфигурация не сохраняется.
Путём научного тыка определил, что конигурация сохраняется тогда, когда MultiFloppy записан в начале.
Записываю так:
0000h - 1FFFh (8k) - MultiFloppy
2000h - 4FFFh (12k) - XUB
E000h - FFFFh (8k) - GlaBIOS
В такой ситуации после инициализации Optional ROMов управление передаётся сразу на XUB. Флоппики работают, однако приглашение Press F2 от Multi Floppy не выводится, по F2 я могу попасть только в boot menu от XUB.
Немного почитал доки на MultiFloppy и вручную поправил конфигурацию MultiFloppy так, чтобы приглошение выводилось не в момент загрузки, а в момент инициализации. Приглашение выводится на экран, но всё равно в конфигурацию не входит. Даже если оставить только MultiFloppy с такой конфигурацией, то на F2 не реагирует. Закрадывается подозрение, что в момент инициализации MultiFloppy, клавиатура не работает.
photo_2025-06-29_13-46-20.jpg
photo_2025-06-29_13-46-20.jpg (63.51 КБ) 80 просмотров
В целом, выглядит так, что что-то hard coded в коде MultiFloppy BIOS, что не даёт правильно сохранить конфигурацию, если он находится не в начале. Но я не силён в asm. Товаришь @kmeaw, глянь своим опытным глазом, что может быть не так https://github.com/skiselev/floppy_bios ... /flash.inc

@arti9m, ты помниться упоминал про BIOS FDC в своих XTшках. Но я сомневаюсь, что он будет с подобным функционалом (сохранение конфигурации). Скорее всего у тебя конфигурация джамперами, так?
Аватара пользователя
arti9m
Сообщения: 1646
Зарегистрирован: Пн июл 12, 2021 5:57 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение arti9m »

Lyawon писал(а): Вс июн 29, 2025 2:51 pm @arti9m, ты помниться упоминал про BIOS FDC в своих XTшках. Но я сомневаюсь, что он будет с подобным функционалом (сохранение конфигурации). Скорее всего у тебя конфигурация джамперами, так?
Времени уже немало прошло, не помню.
По-моему я что-то пре-конфигурировал и зашивал ПЗУ с нужным мне конфигом, но могу ошибаться.

Помню другую неприятную особенность. На XT-шках нет никаких делителей частоты, и даже на 8MHz один из моих контроллеров флоппарей уже не работал (работал только на 4.77). А вот мультикарта 16-битная, воткнутая в 8-битный слот, работала даже на 10 MHz.
Lyawon
Сообщения: 736
Зарегистрирован: Вс июн 21, 2020 6:38 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение Lyawon »

Заделал места ремонта маской с УФ отверждением. Блин, она как камень становится когда высохнет. А сохнет прям за пару минут.
Вложения
20250630_111150.jpg
20250630_111150.jpg (100.17 КБ) 39 просмотров
20250630_111132.jpg
20250630_111132.jpg (159.41 КБ) 39 просмотров
Аватара пользователя
cyreex
Site Admin
Сообщения: 3146
Зарегистрирован: Вт июн 16, 2020 11:33 pm
Откуда: Минск

Re: NuXT своими руками

Сообщение cyreex »

@Lyawon Я уф маской даже сколы на корпусе электрогитары недавно чинил 🤣 Она не хуже эпоксидки держит, но намного удобнее с ней работать.
Ответить