Просмотр полной версии : SD-контроллер от vinxru
там только флажок в корпусе, который нажимает (или не нажимает) на контакт в разъеме
Дааа, это уже не первый раз слышу. Ну тогда бы я в загрузчике запретил запись чего либо. Насколько помню исходник к немуу был, и я его "под себя" корректировал.
Ну вообщем сам контроллер работает. Карты он считывает по 32 гб, отфрорматированные на fat32 на всю карту нормально.
Только вот после первого запуска программы флешка портится. и потом когда дос запускаешь, через пару секунд запускается программа, которая была запущенна в прошлый (первый) раз, когда сд карта была по новой записана.
Что с эти делать не ясно, у всех что ли оно нормально работало ?
akkerman
19.05.2021, 22:20
Что с эти делать не ясно, у всех что ли оно нормально работало ?
Да нет, не у всех... у меня тоже не все гладко. Уже несколько бессонных ночей и не один раз перечитана эта ветка. Все дело в файле оболочки "shell.rk".
Имею 3 варианта оного, и ни один мне не подходит.
1. shell.rk от автора vinxru
Ведет себя как Вы и описали выше.
2. shell.rk модифицированный су6
Все прекрасно, глюков нет, но мне не нравится что с ним не восстанавливается старый путь при повторном запуске.
3. shell.rk модифицированный andykarpov
Тоже без глюков. Путь запоминает, но не удобное управление(клавиши Q,A,O,P а у меня "журнальная" клавиатура). И еще один минус, невозможно запускать файлы из командной строки, в имени которых используются символы Q,A,O,P.
Помогите, кто может!
Нужен "shell.rk" - без глюков + управление курсором + восстановление старого пути при запуске.
Нужен "shell.rk" - без глюков + управление курсором + восстановление старого пути при запуске.
Написать самому. Исходники открыты.
2. shell.rk модифицированный су6
Все прекрасно, глюков нет, но мне не нравится что с ним не восстанавливается старый путь при повторном запуске.
3. shell.rk модифицированный andykarpov
Тоже без глюков. Путь запоминает, но не удобное управление(клавиши Q,A,O,P а у меня "журнальная" клавиатура). И еще один минус, невозможно запускать файлы из командной строки, в имени которых используются символы Q,A,O,P.
а где эти более рабочие лежат ?
akkerman
20.05.2021, 18:00
а где эти более рабочие лежат ?
Ловите все три 75437
- - - Добавлено - - -
Написать самому. Исходники открыты.
Был бы я силен в этих вопросах - написал бы. Можете помочь? Буду очень благодарен.
Да, второй shell работает нормально, а то уж хотел этот контроллер отрезать :)
Зачем интересно Vinx сделал не рабочий ?
Был бы я силен в этих вопросах - написал бы. Можете помочь? Буду очень благодарен.
Я сейчас создаю свой проект, там другая схема подключения контроллера, только под него буду писать оболочку.
Зачем интересно Vinx сделал не рабочий ?
Может перепутали версии для Специалиста и РК? Там протоколы обмена немного отличаются.
Вопрос был только в этом shell, я брал с инета, уж чего там лежало сложно сказать... Иправленный shell, что выше послали нормально работает.
Вчера пришло вдохновенье и сделал контроллер наконец под микрошу, так как к ней много софта достаточно и хотелось его посмотреть более комфортно... Вроде все работает, чуть -чуть еще нужно софт до адаптировать. Вот:
https://i.ibb.co/TW61hj9/IMG-20210922-153304.jpg
https://i.ibb.co/rxFD3dZ/IMG-20210922-153507.jpg
https://i.ibb.co/QQ448Rv/IMG-20210922-153517.jpg
https://i.ibb.co/6WPY9mH/IMG-20210922-153524.jpg
https://i.ibb.co/VHKPVjL/IMG-20210922-192619.jpg
https://i.ibb.co/4tJYm4d/IMG-20210922-192623.jpg
так там стандартный контроллер как тут в теме , как у тебя было сделано с атмегой8 на проводах. Тут просто стоит вв55й еще и пзу для загрузчика. Но вообще надо бы в кикаде развести плату бы...
У меня рация на бронепоезде, и сам я не радист ни разу.
Так что без схемы не соображу. А проводочками со схемой с удовольствием спаяю.
если нужно нарисую попозже
Очень нужно!
Меня даже от руки устроит
Как припаять атмегу к вв55му полностью аналогично как в рк86 понятно? Там 8 проводов данные порт А помоему и 8 проводов адреса порт б.
Да, это понятно.
Куда цеплять ПЗУ и что в него шить, вот вопрос.
Прошивка в атмеге такая же, как в РК-86 ?
- - - Добавлено - - -
И ещё пока не понятно, для чего нужна доп. ВВ55 ?
В микроше есть вв55 второй как в РК, но на его разъеме (трехрядном) нет питания. Так же в микроше нет директивы R, для загрузки с этого вв55.
Поэтому, что бы сделать устройство, которое удобно можно поставить в оригинальную микрошу, ничего с ней не делая, было решено вставит контроллер в системный разъем, добавив там вв55 еще один и пзу для загрузчика.
- - - Добавлено - - -
вот системный разъем 60 контактов https://i.ibb.co/YkfTMYz/2021-09-23-10-01-48.png
- - - Добавлено - - -
вот пзу https://i.ibb.co/rQ6Zf9R/2021-09-23-10-03-51.png
- - - Добавлено - - -
Пзу 2716 или РФ2 припаеваем все контакты к системному разъему согласно названиям, не забываем еще два питания на 12 и 24 ногу.
контакт 18 CS сприсоединием к контакту разъема CS1 (B26). Оно должно появиться с адреса E000.
- - - Добавлено - - -
вот вв55
https://i.ibb.co/1TkdzJq/2021-09-23-10-08-57.png
- - - Добавлено - - -
Его "левую" сторону на картинке припаеваем к системному разъему согласно названиям контактов. контат CS припаеваем к CS3 (B25) разъема. Не забываем питание 7 масса, 26 5 вольт. BB55 должен появиться с адреса F000.
Атмегу 8 припаеваем к портам А и В вв55го согласно оригинальной схеме. Прошивка в атмеге таже.
- - - Добавлено - - -
софт тут https://yadi.sk/d/9tF2dguULUCiWA
файл boot_e000 пишем в ПЗУ
остальное на флеш карту в каталог boot аналогично РК
запускаем Ge000.
- - - Добавлено - - -
вот вроде и все...
- - - Добавлено - - -
единственное микроше не очень нравиться что биос грузится по 75ff, а может и пару байт выше и что то немного портит в ячейках монитора, поэтому название биоса и контроллера при загрузке на экране не видно, но курсор там проходит. Впринципе это не сильно важно и попозже можно вообще этот биос в пзу загнать сразу.
Отлично!
Спасибо!
Наверное есть смысл развести эту плату в формате модуля ПЗУ и контроллера FDD.
https://i.ibb.co/4Rb1F8G/2021-04-09-21-01-15.png
скорее в формате контроллера fdd, там уже и пзу и вв55й есть
Я форму платы имел ввиду. Она у них одинаковая, под корпус.
Если у кого то есть фирменное ПЗУ, может поменять внутренности на читалку с SD.
Опять же горизонтальный формат платы не перекрывает обзор на дисплей. У кого то они маленькие.
https://i.ibb.co/kHcs6fq/K0-CAsc9-Ckw-M.jpg (https://ibb.co/kHcs6fq)
скорее в формате контроллера fdd, там уже и пзу и вв55й есть
Еще интереснее был бы девайс "два-в-одном": эмулятор контроллера FDD + контроллер SD.
Чтобы сохранить совместимость с оригинальной ДОС, нужно сохранить микросхемы портов в/в.
Схему же кодирование битов и управление дисководом, эмулировать программно.
В этом случае было бы нужно к контроллеру fdd готек подключать и под него софт писать, что бы он микрошу понимал.
если нужно нарисую попозже
Спасибо! Повторил по фрагментам схем, словесному описанию и приложенным файлам. Работает.
https://i.ibb.co/NnC7bHF/viber-2021-10-02-11-12-28-694.jpg (https://ibb.co/NnC7bHF)
oracleua
02.10.2021, 17:03
А какие файлы использовать с микрошей если атмега 8 ???
Те что выложены не заработали...
Те, что были на прошлой странице
Добрый день! Скажите а существуют гербера SD-контроллера для апогея?
У vinxru для ЛУТа были файлики
да это я нашел, а из них вообще гербера делаются интересно? И как то непонятно она эта плата к разъему родному припаевается или нет ? Там на фото еще какой-то промежуточный разъем зачем то ?
https://i.ibb.co/0mMLqkQ/3.jpg
Для всех пользователей этого чудного девайса есть интересная новость.
А особенно для тех, кто только собираешься его сделать.
В прошивке меги для РК есть логическая ошибка. Конкретно, в файле 86rksd.c
Мы тут с Виктором (https://zx-pk.ru/members/7627-pyk.html) поднапряглись и разобрались, что проблема заключается в чтении *.rk файлов с хвостом.
Хвост стандартный, в 6 байтов.
В принципе, ну и что, все файлы немного хвостатые. :)
Но штатный SDBIOS.rk грузится впритык к началу рабочей области Монитора. В итоге, в рабочие ячейки Монитора 7600h..7605h попадает "хвост". :)
Ячейка 7605h используется п/п чтения клавиатуры 0F803h для проверки на ненулевое значение.
О проблемном SDBIOS уже писалось, что он не совместим с РК ДОС (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=808791&viewfull=1#post808791).
Также писалось о последующей проблеме с коммандером SHEL (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=884531&viewfull=1#post884531)L. И ее решении (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=887523&viewfull=1#post887523).
Для решения данной проблемы, Дмитрий Цветков (https://zx-pk.ru/members/9232-tchv71.html) сделал правку кода.
// Корректируем указатели
wptr += 4;
readedLength -= 4;
// Длина из файла
lengthFromFile = *(WORD*)(buf+2) - *(WORD*)(buf) + 1;
// Корректируем длину
if(readedLength > lengthFromFile) {
readedLength = lengthFromFile;
} else {
lengthFromFile -= readedLength;
// if(readLength > lengthFromFile) lengthFromFile = readedLength; // это место правки
if(readLength > lengthFromFile) readLength = lengthFromFile;
}
}
Представляю вашему вниманию исправленный мною исходный файл, а также собранную готовую прошивку.
Прошивка собрана под чип Atmega 8L, как и оригинал.
Просьба протестировать.
79099
79100
Но штатный SDBIOS.rk грузится впритык к началу рабочей области Монитора. В итоге, в рабочие ячейки Монитора 7600h..7605h попадает "хвост".
Ячейка 7605h используется п/п чтения клавиатуры 0F803h для проверки на ненулевое значение.
Чем-то напомнило спектрумовские хитрые программы, при загрузке тоже перекрывавшие системные ячейки для разных хитрых проделок. Может, тут тоже что-то подобное для автозапуска или тому подобного?
для автозапуска
да для автозапуска можно загрузиться тоже в ячейки в которых храниться адрес возврата после загрузки. Так и делалася автозапуск, в какие надо вспомнить, более 30 лет назад было
помоему это просто ячейки стека были.
Совершенно верно, это был автозапуск, но совершенно бесконечный (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=884531&viewfull=1#post884531). Настолько, что уже надоедало играть в одну игру. На фичу непохоже. :D
Прошивка проверена, она рабочая.
Баг исправлен благодаря Виктору (https://zx-pk.ru/members/7627-pyk.html), который распознал неладное, и что самое важное, добился движухи. :)
овершенно верно, это был автозапуск, но совершенно бесконечный.
тут речь видимо все таки шла про автозапуск программ загружаемых с магнитофона по дерективе I
Ребята, как на апогее запустить устройство? На флешку закинул данные, форматнул в фат16, набрал R0,100 энетер, G энтер. Ни чего не произошло, просто висит.
- - - Добавлено - - -
Разобрался.
Ведущий_специалист
11.01.2024, 11:22
Просьба протестировать.
Проверил - работает.
smartlime
03.04.2024, 11:59
Привет всем! Собрал адаптер, пытаюсь подключить к вот такому РК (http://radio86rk.pbworks.com/w/page/134473392/RK86-SRAM-2012) (как я понимаю, под такой адаптер и разрабатывался). Ясное дело, не работает, так что пришел с вопросами.
1. Подключаю в порт расширения слева, рядом с раъемом видеовыхода, верно?
2. Правильно ли я понимаю, что запускаться c флешки надо так?
R,100
G
3. И, вот, когда делаю "R,100" с подключенным адаптером, в память получаю одни нули. С неподключенным читается ром-диск. Похоже, поставил куда надо, но на что грешить? С неподходящей флешкой может такое быть?
АлександрПП
03.04.2024, 23:42
В мониторе пишем R0,100. В память по адресу 0 загружается файл /boot/book.rk
В мониторе пишем G. Запускается этот файл и он загружает файл /boot/sdbios.rk и запускает.
как я понимаю, под такой адаптер и разрабатывался
Этот адаптер разрабатывался под Апогей, а не под срам.
что запускаться c флешки
На флешке должны быть необходимые файлы, подходящие именно к вашему ПРК.
"R,100" с подключенным адаптером, в память получаю одни нули
Можно писать "R,FF" или "R,7F". Нули - возможно нет на флешке нужных файлов.
/boot/book.rk
/boot/sdbios.rk
/boot/shell.rk
Не могу запустить сабж.
Купил на Озоне (https://www.ozon.ru/product/nabor-dlya-sborki-adapter-sd-card-dlya-radio-86-rk-sram-purple-kit-diy-644640556/?asb=TOjAB10t6oI2sQhKag4Zjugnaqql1eDewUFl5zyv9%252 FU%253D&asb2=OPokHl7SGOosnlOc7sjQoTYVUivsa-Jn-JotAxbktPd9G1_7CBX9IlfTQMmwJSzeD78MpT0C47AmW8LItko PwA&avtc=1&avte=2&avts=1710793624&keywords=%D1%80%D0%B0%D0%B4%D0%B8%D0%BE-86%D1%80%D0%BA), флэшка 4гб, FAT32.
Запускаю на варианте РК SRAM: https://github.com/skiselev/radio-86rk/tree/v1.3
Девайс через некоторое время зажигает светодиод, по команде R,100 загружает нули.
В чём может быть дело?
Купил на Озоне
Любопытно, а прошивалась ли Мега? :v2_dizzy_grandfathe
Может и не прошивалась. Но тогда наверняка в комплекте были бы пины под разъём программатора, а их нет. Пожалуй да, надо перепрошиться.
smartlime
08.04.2024, 17:13
Не могу запустить сабж.
Купил на Озоне,
Хмммм, какие знакомые симптомы и какой знакомый лот на Озоне! У меня было один-в-один.
Что я делал в попытках победить:
- Нашел программатор (usbasp)
- Проверил атмегу. Прочитать программатором не получилось. Ни в какую. Перепаял, чтобы исключить ошибки монтажа. То же самое.
- Перепаял на новую, точно чистую. Программатор увидел. А, вот, РК светодиод с чистой не зажигает. Так что, подозреваю, что если читает нули, то дело, все же, или в флешке, или прошивка не подходит.
- Теперь проблема в прошивке ))
Собственно, вопрос -- как теперь чистую атмегу прошивать правильно? Я так понимаю, прошивка эта: https://github.com/andykarpov/radio-86rk-sdcard/blob/master/firmware/src/atmega328p/Exe/86rksd.hex
А какие фьюзы надо прописать?
У меня как-то совсем странно ведет себя с этой прошивкой и 2 помеяными фьюзами как в ридми с гитлаба: После запуска в РК судорожно начинает моргать диодом. И не читает ничего (вычитывается содержимое рамдиска по R,100)
marinovsoft
08.04.2024, 17:33
Очередная жертва Хабаровского барыги. (Чтобы не быть голословным, читать вот отсюда (https://zx-pk.ru/threads/28706-spetsialist-quot-vostochnyj-ekspress-quot-sborka-i-naladka.html?p=1191287&viewfull=1#post1191287) предыдущая).
Перепаял на новую, точно чистую. Программатор увидел. А, вот, РК светодиод с чистой не зажигает. Так что, подозреваю, что если читает нули, то дело, все же, или в флешке, или прошивка не подходит.
USBasp не помог, подключение внешнего кварца при прошивании тоже результатов не дало. USBasp рабочий, использую его часто.
Если атмега новая, она прям нормально же прошиваться должна USBasp'ом? Я просто новые никогда не шил, только тиньки и готовые девайсы с работающей прошивкой.
Одно время китайцы барыжили чипом WAVGAT что-то там 328, улучшенный клон атмеги. Реально улучшенный, он у меня есть. Так вот его USBasp не видит с теми же ошибками, что и проц из набора. Надо погуглить, вдруг он.
smartlime
08.04.2024, 18:52
Да, барыга чего-то не то дал. Но РК от него сама вполне живая оказалась.
Ну. и в моем случае, контроллер, кажется, прошить получилось почти правильно.
Стало читаться не то, что в ром-диске, и первые 2 байта совпадают с загрузчиком на флешке. Но дальше что-то странное идет. Теперь думаю, это может быть от фьюзов?
- - - Добавлено - - -
Если атмега новая, она прям нормально же прошиваться должна USBasp'ом?
Да, у меня прошилась. Только совсем новая, не из набора. Но там фьюзы конфигурируют саму атмегу, а с ними, возможно, что-то не то. В оригинале (https://github.com/andykarpov/radio-86rk-sdcard) не очень понятно, что прописать, и не может ли что-то еще влиять.
Одно время китайцы барыжили чипом WAVGAT что-то там 328, улучшенный клон атмеги. Реально улучшенный, он у меня есть. Так вот его USBasp не видит с теми же ошибками, что и проц из набора. Надо погуглить, вдруг он.
Может быть, напряжение питания другое должно быть, у меня JP1 стоит справа. Но с оригинальной атмегой не работало вообще, поэтому было подозрение, что она мертвая (мог и сам статикой выбить, чего уж там греха таить)
По описанию я понял, что фьюзы должны быть такими: avrdude -c usbasp -p m328p -U flash:w:86rksd.hex -U lfuse:w:0xe2:m -U hfuse:w:0xd9:m -U efuse:w:0xff:m -F -B 2400
Прошил Arduino Nano через USBasp, выпаял мегу, впаял в девайс - не работает и не прошивается. Хрен знает в чём дело.
smartlime
08.04.2024, 22:25
не работает и не прошивается. Хрен знает в чём дело.
Перемычка JP1 как стоит? У меня с 3,3В прошивалось (и читалось), это положение ближе к разъему. Ардуина работала с 5В, точно помню.
- - - Добавлено - - -
Стало читаться не то, что в ром-диске, и первые 2 байта совпадают с загрузчиком на флешке. Но дальше что-то странное идет. Теперь думаю, это может быть от фьюзов?
Сам себе еще отвечу ) Это не от фьюзов. Фьюзы почти такие же как выше сработали. А тут пропаял еще раз шину адреса, похоже непропай одной ноги случился.
Теперь у меня вычитывается загрузчик, даже правильно. Но! После "G" ничего не происходит ( Может, надо какой-то специальный под РК именно, а тот, что в гите не подходит? Или же, что-то с самой РК? Есть подозрения, что может еще работать не особо стабильно. Но чтобы совсем ничего не грузилось дальше, кажется, что не совсем в этом дело. Что бы еще проверить?
Перемычка JP1 как стоит?
У меня старый USBasp, на нём только 5В, но это не должно влиять на прошивку в данном случае.
Vasily_A
08.04.2024, 22:59
у меня на плате версии 1.3 от Киселева работает.
прошивка и содержимое sd с гита Карпова.
по меге - может atmega328pb попалась? это реально улучшенная atmega328p, но не 100% совместимая.
id чипа у нее другой, программатор должен был ругнуться.
если сильно надо, то winavr20100110 допиливается до работы с ней, в том числе под вин10-64, все нормально работает.
Мне недавно пришлось старый проект поправить, а самым быстрым путем для добывания пары мег оказалось купить ардуины нано и выпаять...
меги оказались с буквой "b" в конце. правка исходника минимальная.
у меня на плате версии 1.3 от Киселева работает.
У меня тоже плата Киселёва 1.3, но вот что-то не получается. Буду проверять питание и дорожки. Спаял всё аккуратно, может атмегу перегрел, но тиньки же не перегревал ни разу...
Serg6845
09.04.2024, 00:20
Прошил Arduino Nano через USBasp, выпаял мегу, впаял в девайс - не работает и не прошивается. Хрен знает в чём дело.
на ардуине есть кварц, на контроллере нету. скорее всего с фьюзами косяк...
на ардуине есть кварц, на контроллере нету. скорее всего с фьюзами косяк...
Я выставил фьюзы на внутреннюю частоту 8мГц.
smartlime
09.04.2024, 09:20
прошивка и содержимое sd с гита Карпова.
А можете кинуть ссылку на него? Не сталкивался еще. )) В мире РК я пока нуб ))
У меня старый USBasp, на нём только 5В, но это не должно влиять на прошивку в данном случае.
По идее, да. Но у меня прошилось только на 3.3, на 5 чип не виделся. Причем, Ардуина виделась и так и так, а первая атмега -- никак (поэтому и посчитал мертвой).
Я выставил фьюзы на внутреннюю частоту 8мГц.
У меня там оказалось 3 фьюза на 8000кГц, опытнвм путем выяснил, что нужен с задержкой 0мс. При остальных бешено моргает светодиодом. А тут -- диод вспыхивает на небольшой промежуток при запуске и гаснет. Ну, собственно, и загрузчик я уже прочитал. Только он что-то не работает пока.
Не могу запустить сабж.
Привет тебе от старого мопедиста ;)
Для сборки SD читалки достаточно голой атмеги и кардхолдера для ардуины как здесь https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=1114161&viewfull=1#post1114161. Я так же делал, только атмегу впаял в макетку. И не нужны никакие платы "от барыг" и танцы с бубнами.
https://i.ibb.co/LQZXyZm/099-EA38-B-436-D-4-CA1-AE77-7-DDE2-E813-E7-C.jpg (https://ibb.co/LQZXyZm)https://i.ibb.co/bdqHFXg/3-BF85-D10-630-D-4305-A647-125-DA172653-C.jpg (https://ibb.co/bdqHFXg)
smartlime
09.04.2024, 09:59
достаточно голой атмеги и кардхолдера
Ну, все же, еще преобразователь уровней нужен ) И он там вроде виден тоже.
Но да, можно и так собрать. Я только DIP-овую Атмегу (для других целей искал), на Митинском рынке не нашел. Зато видел много круглых глаз продавцов.))
А как, кстати, выглядит, когда карта не того формата? У меня РК просто виснет после G, ищу концы ) (Загрузчик из boot.rk читается без проблем при этом).
Привет тебе от старого мопедиста ;)
Привет, бро!
Набор уже куплен, не имеет смысла всё переделывать, надо его теперь запустить.
преобразователь уровня -- это диод шоттки и резистор.
Я так понимаю, прошивка эта
Нет, уже устарела
Есть новая (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=1181662&viewfull=1#post1181662)
- - - Добавлено - - -
Если атмега новая, она прям нормально же прошиваться должна USBasp'ом? Я просто новые никогда не шил
У "новых" бывает внезапно включен внешний генератор частоты. Попадалось такое.
Важно добиться, чтобы avrdude видела мегу. И только после этого, делать попытки что то записать.
У "новых" бывает внезапно включен внешний генератор частоты. Попадалось такое.
Это не новая. Косящая под новую.)
А под микрошу кто нить разводил плату?
софт тут https://yadi.sk/d/9tF2dguULUCiWA
файл boot_e000 пишем в ПЗУ
Исходники boot_e000 и прочего не сохранились?
Насколько я помню это просто загрузчик от оригинального проекта. И возможно там добавлен какой то кусок кода от ркшного монитора, на который ссылается потом sdbios и которого небыло в микроше
; SD BIOS for Computer "Radio 86RK" / "Apogee BK01"
; (c) 09-10-2014 vinxru (aleksey.f.morozov@gmail.com)
.org 0e000h
MONITOR equ 0F89dh ; Адрес собрата в Монитор
USER_PORT equ 0f000H ; Адрес КР580ВВ55
SEND_MODE equ 10000000b ; Режим передачи (1 0 0 A СH 0 B CL)
RECV_MODE equ 10010000b ; Режим приема (1 0 0 A СH 0 B CL)
; Коды передаваемые микроконтроллером
ERR_START equ 040h ; МК переключен в режим приема команд
ERR_WAIT equ 041h ; МК выполняет команду
ERR_OK_DISK equ 042h ; Накопитель исправен, микроконтроллер готов к приему команды
ERR_OK equ 043h ; Команда выполнена
ERR_OK_READ equ 044h ; МК готов передать следующий блок данных
ERR_OK_ADDR equ 047h ; МК готов передать адрес загрузки
ERR_OK_BLOCK equ 04Fh
;----------------------------------------------------------------------------
; Точка входа
Entry:
; Первым этапом происходит синхронизация с контроллером
; 256 попыток. Для этого в регистр C заносится 0
MVI C, 0
Boot:
; Режим передачи (освобождаем шину) и инициализируем HL
CALL RecvMode
JMP Boot2
;----------------------------------------------------------------------------
; Отправка и прием байта (в HL должен находится USER_PORT)
Rst1:
; Шина адреса используется как тактовый сигнал
INX H
MVI M, 20h
MVI M, 0
DCX H
; Прием байта
MOV A, M
RET
;----------------------------------------------------------------------------
; Ожидание готовности МК
Rst2:
WaitForReady:
call Rst1
CPI ERR_WAIT
JZ WaitForReady
RET
;----------------------------------------------------------------------------
; Начало любой команды (это шина адреса)
Boot2:
INR L
MVI M, 0
MVI M, 44h
MVI M, 40h
MVI M, 0h
DCR L
; Если есть синхронизация, то контроллер ответит ERR_START по шине данных
call Rst1
CPI ERR_START
JNZ RetrySync
; Инициализация флешки
call Rst2
CPI ERR_OK_DISK
JNZ RetrySync
; Режим передачи
call Rst1
MVI A, SEND_MODE
CALL SetMode
; Код команды BOOT
MVI M, 0
call Rst1
; Режим приема
CALL RecvMode
; Это ответ команды BOOT
call Rst2
CPI ERR_OK_ADDR
JNZ RetrySync
; Адрес загрузки в BC
call Rst1
MOV C, A
call Rst1
MOV B, A
; Сохраняем в стек адрес запуска
PUSH B
; Файл может быть разбит на несколько частей
RecvLoop:
; Все части загружены, можно запускать файл.
call Rst2
CPI ERR_OK_READ
JZ Rst1
; Если МК прочитал блок без ошибок, будет передан ERR_OK_BLOCK
CPI ERR_OK_BLOCK
JNZ PrintError
; Размер блока данных
call Rst1
MOV E, A
call Rst1
MOV D, A
; Принимаем блок данных
RecvBlock:
MOV A, E
ORA D
JZ RecvLoop
call Rst1
STAX B
INX B
DCX D
JMP RecvBlock
;----------------------------------------------------------------------------
; Повторные попыки
RetrySync:
; Попытки
DCR C
JNZ Boot
;----------------------------------------------------------------------------
; Вывод кода ошибки
PrintError:
CALL 0F815h
JMP MONITOR
;----------------------------------------------------------------------------
; Установка режима приема или передачи
RecvMode:
MVI A, RECV_MODE
SetMode:
LXI H, USER_PORT+3
MOV M, A
MVI L, 0
RET
.End
; SD BIOS for Computer "Radio 86RK" / "Apogee BK01"
; (c) 09-10-2014 vinxru (aleksey.f.morozov@gmail.com)
Это и правда код Морозова.
Ваш sdbios.rk и shell.rk даже по размеру отличаются от оригинальных ркшных.
Файл boot_e000.rk содержит что угодно, только не загрузчик boot.rk.
И только boot.rk похож на оригинал, с незначительными двумя байтами.
Реальные исходники были бы намного лучше. Проект opensource.
Файл boot_e000.rk содержит что угодно, только не загрузчик boot.rk.
я сейчас посмотрел по кодам, насколько я помню команды ассемблера в кодах. Этот файл именно этот загрузчик, что ассемблеровский лист выше я загрузил и содержит до 89h , а с 8ah идет какой то кусок кода ркшного монитора к которому обращалась sdbios, что этот кусок делает сейчас не помню, но можно дисасеблировать и посмотреть. Какие там реальные исходники были понятия не имею, я это сделал из того, что подруку попалось, просто адаптировав, под те адреса, где у меня ВВ55 стоит и чтобы с монитором микроши работало.
- - - Добавлено - - -
p.s. испавлять нужно было только boot, что бы в ПЗУ его сразу записать и биос. Сам shell наверное без исправлений уже, а как был.
- - - Добавлено - - -
Посмотрел дизассемблером. Все верно как написано выше. Первая часть загрузчик, и с адреса e08ah (8ah в файле) идет небольшая подпрограмма монитора РК-86, что-то типа стирания экрана на вид. Которую использовал sdbios и которой не было в мониторе микроши, в отличии от РК-86 в рк-86 эта процедура INIT_VIDEO = 0F82DH
У меня теперь атмега шьётся старым 5-ти вольтовым USBasp'ом, при старте мигает светодиод. Это что значит? Флэшка не нравится? Файлы не те?
при старте мигает светодиод. Это что значит? Флэшка не нравится? Файлы не те?
Как моргает? Один раз моргнул или постоянно?
Значит, мега работает. Это она так об ошибке сообщает, что SD карту не видит.
Какие требования к карте? У меня 4гб, FAT32. Все дорожки прозвонил, ни замыканий, ни разрывов нет.
Поставил другую карту, но тоже 4гб. С ней светодиод долго горит, потом начинает мигать. Наверное надо карту меньшего размера? Или в FAT32 надо размер кластера ставить не по умолчанию?
я сейчас посмотрел по кодам, насколько я помню команды ассемблера в кодах. Этот файл именно этот загрузчик, что ассемблеровский лист выше я загрузил и содержит до 89h , а с 8ah идет какой то кусок кода ркшного монитора к которому обращалась sdbios, что этот кусок делает сейчас не помню, но можно дисасеблировать и посмотреть. Какие там реальные исходники были понятия не имею, я это сделал из того, что подруку попалось, просто адаптировав, под те адреса, где у меня ВВ55 стоит и чтобы с монитором микроши работало.
Очень жаль, что на коленке и нету исходников. Посмотрите насколько отличается содержимое загрузчика и ПЗУ из Вашего архива.
Скриншот здесь вставить не удалось, к сожалению. Все ужимается просто в га**но.
80684
80686
Тут даже команды RST удалены, по понятной причине.
- - - Добавлено - - -
Сам shell наверное без исправлений уже, а как был.
Нет сам shell не просто исправлен, а даже размер другой.
- - - Добавлено - - -
P. S. дизассемблировано дизассемблером от Виталия (https://86rk.ru/disassm/). :v2_thumb:
повторюсь еще раз, что в моем файле этот код, что ниже (Он видимо немного переделан мною, что бы работала с адреса 0е000h, плюс процедура монитора от рк рк-86 эта процедура INIT_VIDEO = 0F82DH
; SD BIOS for Computer "Radio 86RK" / "Apogee BK01"
; (c) 09-10-2014 vinxru (aleksey.f.morozov@gmail.com)
.org 0e000h
MONITOR equ 0F89dh ; Адрес собрата в Монитор
USER_PORT equ 0f000H ; Адрес КР580ВВ55
SEND_MODE equ 10000000b ; Режим передачи (1 0 0 A СH 0 B CL)
RECV_MODE equ 10010000b ; Режим приема (1 0 0 A СH 0 B CL)
; Коды передаваемые микроконтроллером
ERR_START equ 040h ; МК переключен в режим приема команд
ERR_WAIT equ 041h ; МК выполняет команду
ERR_OK_DISK equ 042h ; Накопитель исправен, микроконтроллер готов к приему команды
ERR_OK equ 043h ; Команда выполнена
ERR_OK_READ equ 044h ; МК готов передать следующий блок данных
ERR_OK_ADDR equ 047h ; МК готов передать адрес загрузки
ERR_OK_BLOCK equ 04Fh
;----------------------------------------------------------------------------
; Точка входа
Entry:
; Первым этапом происходит синхронизация с контроллером
; 256 попыток. Для этого в регистр C заносится 0
MVI C, 0
Boot:
; Режим передачи (освобождаем шину) и инициализируем HL
CALL RecvMode
JMP Boot2
;----------------------------------------------------------------------------
; Отправка и прием байта (в HL должен находится USER_PORT)
Rst1:
; Шина адреса используется как тактовый сигнал
INX H
MVI M, 20h
MVI M, 0
DCX H
; Прием байта
MOV A, M
RET
;----------------------------------------------------------------------------
; Ожидание готовности МК
Rst2:
WaitForReady:
call Rst1
CPI ERR_WAIT
JZ WaitForReady
RET
;----------------------------------------------------------------------------
; Начало любой команды (это шина адреса)
Boot2:
INR L
MVI M, 0
MVI M, 44h
MVI M, 40h
MVI M, 0h
DCR L
; Если есть синхронизация, то контроллер ответит ERR_START по шине данных
call Rst1
CPI ERR_START
JNZ RetrySync
; Инициализация флешки
call Rst2
CPI ERR_OK_DISK
JNZ RetrySync
; Режим передачи
call Rst1
MVI A, SEND_MODE
CALL SetMode
; Код команды BOOT
MVI M, 0
call Rst1
; Режим приема
CALL RecvMode
; Это ответ команды BOOT
call Rst2
CPI ERR_OK_ADDR
JNZ RetrySync
; Адрес загрузки в BC
call Rst1
MOV C, A
call Rst1
MOV B, A
; Сохраняем в стек адрес запуска
PUSH B
; Файл может быть разбит на несколько частей
RecvLoop:
; Все части загружены, можно запускать файл.
call Rst2
CPI ERR_OK_READ
JZ Rst1
; Если МК прочитал блок без ошибок, будет передан ERR_OK_BLOCK
CPI ERR_OK_BLOCK
JNZ PrintError
; Размер блока данных
call Rst1
MOV E, A
call Rst1
MOV D, A
; Принимаем блок данных
RecvBlock:
MOV A, E
ORA D
JZ RecvLoop
call Rst1
STAX B
INX B
DCX D
JMP RecvBlock
;----------------------------------------------------------------------------
; Повторные попыки
RetrySync:
; Попытки
DCR C
JNZ Boot
;----------------------------------------------------------------------------
; Вывод кода ошибки
PrintError:
CALL 0F815h
JMP MONITOR
;----------------------------------------------------------------------------
; Установка режима приема или передачи
RecvMode:
MVI A, RECV_MODE
SetMode:
LXI H, USER_PORT+3
MOV M, A
MVI L, 0
RET
.End
- - - Добавлено - - -
Нет сам shell не просто исправлен, а даже размер другой.
Я не знаю откуда у меня этот shell, но я его не исправлял... Да и насколько я понимаю, можете туда вообще любой из этих шеллов приложить. Исправлять нужно было только sd bios
- - - Добавлено - - -
Очень жаль, что на коленке и нету исходников. Посмотрите насколько отличается содержимое загрузчика и ПЗУ из Вашего архива.
Скриншот здесь вставить не удалось, к сожалению. Все ужимается просто в га**но.
80684
80686
Тут даже команды RST удалены, по понятной причине.
- - - Добавлено - - -
Нет сам shell не просто исправлен, а даже размер другой.
- - - Добавлено - - -
P. S. дизассемблировано дизассемблером от Виталия (https://86rk.ru/disassm/). :v2_thumb:
boot_e000.hex.asm
Тут даже команды RST удалены, по понятной причине.
- - - Добавлено - - -
Сообщение от sd
Сам shell наверное без исправлений уже, а как был.
Нет сам shell не просто исправлен, а даже размер другой.
- - - Добавлено - - -
P. S. дизассемблировано дизассемблером от Виталия.
Ну этот дизассемблер ровно тот код что выше у вас и показал...
- - - Добавлено - - -
Тут даже команды RST удалены, по понятной причине.
и в этом коде нет коман RST то есть наверное изначально были, но тот код выше переделан немного мною значит :)
- - - Добавлено - - -
Вот этот код процедуры из ркшного монитора 0F82DH
CNST1 EQU 0D001h ; [1] ; 53249 ; -12287
CNST2 EQU 0F003h ; [1] ; 61443 ; -4093
CNST3 EQU 0F808h ; [1] ; 63496 ; -2040
PUSH H
LXI H, CNST1
MVI M, 00h
DCX H
MVI M, 4Dh ; 77 ; 'M'
MVI M, 1Dh ; 29
MVI M, 99h ; 153 ; -103
MVI M, 93h ; 147 ; -109
INX H
MVI M, 27h ; 39 ; '''
MOV A, M
LBL7:
MOV A, M
ANI 20h ; 32 ; ' '
JZ LBL7
LXI H, CNST3
MVI M, 80h ; 128 ; -128
MVI L, 04h ; 4
MVI M, 0D0h ; 208 ; -48
MVI M, 76h ; 118 ; 'Ж'
INR L
MVI M, 23h ; 35 ; '#'
MVI M, 49h ; 73 ; 'I'
MVI L, 08h ; 8
MVI M, 0A4h ; 164 ; -92
POP H
RET
- - - Добавлено - - -
к этой процедуре как раз sdbios и обращался. И все исправления в нем помоему закончились ее адресом.
Вот этот код процедуры из ркшного монитора 0F82DH
Да, это "п/п перезапуск видеоконтроллера" из Монитора.
А зачем она тут? Что то сбивает синхру?
А зачем она тут? Что то сбивает синхру?
Изначальный код sdbios к ней в начале обращался, зачем честно говоря лень было разбираться, поэтому этот кусок кода я просто в ПЗУ после загрузчика и добавил. Самый простой и быстрый путь был.
Какой-то трындец с этой платой!
Заменил 328p на Атмегу 8, всё прошивается, замыканий нет, разрывов нет, три флэшки разных калибров в наличии. Мигает светодиодом постоянно, и всё!
Пока только один позитивный момент - купил фен, и научился им работать.
Печаль ппц.
купил фен, и научился им работать
Это самое главное :v2_thumb:
Хотя, эта мега паяльником тоже паяется )
Мигает светодиодом постоянно
Мигание означает, что либо нету связи с картой, либо что то не нравится.
/************************************************** ************************
* Проверка готовности/наличия карты *
************************************************** ************************/
BYTE sd_check() {
BYTE i = 0;
do {
sd_sendCommand(APP_CMD, 0);
if(sd_sendCommand(SD_SEND_OP_COND, 0x40000000) == 0) return 0;
} while(--i);
return 1;
}
/************************************************** ************************
* Проверка наличия диска и если нужно, то его инициализация *
************************************************** ************************/
BYTE fs_check() {
if(!sd_check()) return 0;
return fs_init();
}
/************************************************** ************************
* Инициализация *
************************************************** ************************/
BYTE fs_init() {
DWORD bsect, fsize, tsect;
/* Сбрасываем оптимизацию */
fs_fatoptim = 2;
/* Предотвращаем ошибки программиста */
#ifndef FS_DISABLE_CHECK
fs_file.opened = OPENED_NONE;
#ifndef FS_DISABLE_SWAP
fs_secondFile.opened = OPENED_NONE;
#endif
fs_type = FS_ERROR;
#endif
/* Инициализация накопителя */
if(sd_init()) return 1;
/* Ищем файловую систему */
bsect = 0;
while(1) {
if(sd_readBuf(bsect)) return 1;
if(LD_WORD(buf + 510) == 0xAA55) {
if(LD_WORD(buf + BS_FilSysType ) == 0x4146) break;
if(LD_WORD(buf + BS_FilSysType32) == 0x4146) break;
/* Возможно это MBR */
if(bsect == 0 && buf[MBR_Table+4]) {
bsect = LD_DWORD(buf + (MBR_Table + 8));
if(bsect != 0) continue;
}
}
abort_noFS:
lastError = ERR_NO_FILESYSTEM; return 1;
}
/* Размер таблицы FAT в секторах */
fsize = LD_WORD(buf + BPB_FATSz16);
if(fsize == 0) fsize = LD_DWORD(buf + BPB_FATSz32);
/* Размер файловой системы в секторах */
tsect = LD_WORD( buf + BPB_TotSec16);
if(tsect == 0) tsect = LD_DWORD(buf + BPB_TotSec32);
/* Размер корневого каталога (должно быть кратно 16 и для FAT32 должно быть рано нулю) */
fs_n_rootdir = LD_WORD(buf + BPB_RootEntCnt);
/* Адреса таблиц FAT в секторах */
fs_fatbase = bsect + LD_WORD(buf + BPB_RsvdSecCnt);
fs_fatbase2 = 0;
if(buf[BPB_NumFATs] >= 2) fs_fatbase2 = fs_fatbase + fsize;
/* Кол-во секторов на кластер */
fs_csize = buf[BPB_SecPerClus];
/* Кол-во кластеров */
fsize *= buf[BPB_NumFATs];
fs_n_fatent = (tsect - LD_WORD(buf + BPB_RsvdSecCnt) - fsize - fs_n_rootdir / 16) / fs_csize + 2;
/* Адрес 2-ого кластера */
fs_database = fs_fatbase + fsize + fs_n_rootdir / 16;
/* Определение файловой системы */
/* FAT 12 */
if(fs_n_fatent < 0xFF7) goto abort_noFS;
/* FAT 16 */
if(fs_n_fatent < 0xFFF7) {
fs_dirbase = fs_fatbase + fsize;
fs_type = FS_FAT16;
return 0;
}
/* FAT 32 */
fs_dirbase = LD_DWORD(buf + BPB_RootClus);
/* Сбрасываем счетчик свободного места */
if(LD_WORD(buf + BPB_RsvdSecCnt)>0) {
bsect++;
if(sd_readBuf(bsect)) return 1;
if(LD_DWORD(buf) == 0x41615252 && LD_DWORD(buf + 0x1E4) == 0x61417272 && LD_DWORD(buf + 0x1FC) == 0xAA550000) {
LD_DWORD(buf + 0x1E8) = 0xFFFFFFFF;
LD_DWORD(buf + 0x1EC) = 0xFFFFFFFF;
if(sd_writeBuf(bsect)) return 1;
}
}
fs_type = FS_FAT32;
return 0;
}
- - - Добавлено - - -
Заменил 328p на Атмегу 8
Не забывайте, что прошивка у них разная.
Хотя, эта мега паяльником тоже паяется )
Конечно паяется, я их две паяльником перепаял на этой плате.
Не забывайте, что прошивка у них разная.
Разумеется, и фьюзы разные.
Мигание означает, что либо нету связи с картой, либо что то не нравится.
Остаётся только микросхема согласования уровней. Но я уже не буду с этой платой возиться. Либо соберу на отдельных элементах, как Pluto предлагал (в наличии всё есть от старых проектов), либо продолжу пользоваться своим девайсом (https://zx-pk.ru/threads/35692-internet-dali!.html). Второй вариант более вероятный.
Заработала у меня эта штука, был неисправен стабилизатор напряжения, заменил на HT7333-1.
Ведущий_специалист
16.05.2024, 13:17
Заработала у меня эта штука, был неисправен стабилизатор напряжения, заменил на HT7333-1.
А времени то сколько потрачено! а ведь всего лишь вольтметр в руки и 5 минут дел.
А времени то сколько потрачено! а ведь всего лишь вольтметр в руки и 5 минут дел.
Вольтметр у меня помер, пока новый купил, пока руки дошли... да и было, чем заняться)
Без вольтметра подпаял ардуиновский модуль для микро-сд, убедился, что загрузка происходит, значит с картами всё нормально и атмега8 как надо прошилась, на этом и успокоился до вчерашнего дня.
был неисправен стабилизатор напряжения
Не было питания для SD карты, соответственно и связи с нею не было.
Питание было избыточное, по всей видимости на SD карте включалась защита т.к. карты не сгорели.
smartlime
18.10.2024, 12:31
С платой как-то не получилось, к сожалению -- теперь просто мигает диодом и читает нули. Возможно, что-то уже умерло при экспериментах.
Хочу собрать устройство без платки. В наличии есть Arduino Nano, в котором и стоит atmega328p, и программировать его проще. Не пробовал ли кто сделать так?
Или ищу вариант, как собрать что-то такое же из "голой" atmega328p, у меня есть тоже в диповом корпусе. Возможно, есть у кого-то схема, как подключиться?
жесть... свой первый СД-контроллер я собрал на скорую руку на бредборде, на которой были установлены: АТмега, три диода, резистор, светодиод и вот эта хрень https://aliexpress.ru/item/1005002254451964.html
smartlime
18.10.2024, 13:33
жесть... свой первый СД-контроллер я собрал на скорую руку на бредборде, на которой были установлены: АТмега, три диода, резистор, светодиод и вот эта хрень https://aliexpress.ru/item/1005002254451964.html
Да, я вот тоже как-то так и хотел. Все есть. Хрень тоже. Схемы нет) Но, видимо, попробую по схеме контроллера сделать. Диоды ток смущают теперь еще, их там нет)
Но -- подумалось -- в ардуине же все то же самое, может ее и использовать получится? (Ее программировать сильно проще)
ну ё-моё. какая схема, там же все просто, надо только найти на платке где какие сигналы.
выходы от атмеги (SS, MOSI, SCK) к платке подключаются через диоды, катодами к атмеге, использовать надо диоды шоттки, вход (MISO) напрямую к платке, земля, питание и светодиод. ну и куча проводков на порт.
smartlime
18.10.2024, 15:03
ну ё-моё. какая схема, там же все просто, надо только найти на платке где какие сигналы.
выходы от атмеги (SS, MOSI, SCK) к платке подключаются через диоды, катодами к атмеге, использовать надо диоды шоттки, вход (MISO) напрямую к платке, земля, питание и светодиод. ну и куча проводков на порт.
Ну, это просто когда все знаешь) Я в атмегах не сильно силен, и на какие концы что заводить, особенно как заводить кучу проводков -- это надо разбираться. Попробую оттолкунуться от схемы контроллера, и, вомзожно, эти знания мне помогут.
В наличии есть Arduino Nano, в котором и стоит atmega328p
я конечно ничего не понимаю в ардуинах, но посмотри как там и там подключен кварц и светодиод. Думаю этого достаточно, особенно кварца). Это я по памяти пишу, лет 10 уже прошло с начала темы или чуть меньше?)
smartlime
21.10.2024, 20:16
но посмотри как там и там подключен кварц и светодиод
Да, кварц, уже нашел. Сидит на нужных ногах. Так что, на Ардуине не сделать. Сейчас пытаюсь прошить голую атмегу, думаю, должно получиться, почти разобрался.
- - - Добавлено - - -
В общем, собрал на бредборде, но мигает диодом примрено раз в секунду. И читаются стабильно нули. Как понимаю, карту не видит.
Есть ли возможность как-то отладить этот контроллер? Консоль куда-то прицепить, например?
И, второй вопрос: Может ли такое быть из-за фьюзов? Сразу не прошивал, увидел, что диод радостно моргает и решил, что все заработало и пошел подключать к РК. Сейчас задумался. Может ли быть такое, что контроллер запустился, диод мигает, а из-за фьюзов (неверный клок?) не работает карта или данные не уходят?
Так что, на Ардуине не сделать.
ну нее, я такое точно не говорил)) Я сказал, что это немного нетривиально сделать...
https://pic.maxiol.com/images2/1729541213.2987899429.sd.jpg
мой вариант. Работал и на большой ардуино уно, и на маленькой микро. Сейчас сама РК-86 приказала долго ждать :((
Ну да, прошивку пришлось немного потрошить, на предмет кварца. да и сам файловый менеджер тоже несколько заточенный под себя любимого, в частности файлы немного в других папках лежат. Ну мне так нужнее было :)
С платой как-то не получилось, к сожалению -- теперь просто мигает диодом и читает нули.
В общем, собрал на бредборде, но мигает диодом примрено раз в секунду. И читаются стабильно нули.
Повторение ошибки, это уже результат. )))
Может попроще проекты попробовать, изучить мегу на ардуиновских проектах?
Есть ли возможность как-то отладить этот контроллер? Консоль куда-то прицепить, например?
Контроллер нет, прошивку да. Сделайте стандартный проект ардуино с COM портом, и можно видеть вывод на него в консоли среды ардуино.
Потренируйтесь прошивать мегу, начать можно с загрузчика ардуино.
Далее, все работа идет через COM порт. Можно залить скетч для работы с картой SD. Потом, можно и avr-Си попробовать тоже самое. И все это строго на бредборде.
- - - Добавлено - - -
немного нетривиально сделать
Немного прокомментирую.
Светодиод убран с порта PB0 (вредительская схема) на логичный PB2 (SS выбор карточки).
Освобожденные PB0 и порт PB1 уходят на адреса A6, A7 вместо занятых кварцем PB6, PB7.
Но если не менять, шило на мыло, а забрать весь порт PBx (PB0, PB1, PB6 и PB7) под адреса A4..A7,
то можно заиметь свободным очень ценные порты PC4 и PC5.
То есть, аппаратный I2C, и множество клевых девайсов работающих с ним, начиная с тех же часов (для времени новых файлов).
прошивку пришлось немного потрошить
Судя по изменениям порта PBх потрошить пришлось достаточно. :rolleyes_std:
smartlime
22.10.2024, 12:59
Повторение ошибки, это уже результат. )))
Скорее, это наводит на мысли о работоспособности порта РК или того, что карта все-таки не подходит. Надо будет проверить на другой РК, но надо собрать тогда более удобно переключаемый вариант, 1-контактные дюпоны переставлять между машинками так себе идея.
Может попроще проекты попробовать, изучить мегу на ардуиновских проектах?
А что это даст? Да и игрался я уже с ними, откуда-то же у меня под руками оказалась пара ардуин). Непонятно, что такое можно тут изучить, чтобы запустить контроллер. Атмега-то прошилась нормально, диод мигает, что внутри происходит -- непонятно, но другие проекты тут слабо помогут. В общем, непонятно, как это может помочь с текущими вопросами. Например, про то, может ли влиять клок на передачу данных в РК.
Контроллер нет, прошивку да. Сделайте стандартный проект ардуино с COM портом, и можно видеть вывод на него в консоли среды ардуино.
Да это понятно как делается. Но для консоли тоже свободные пины порта нужны, они заняты, прошивку снова надо ковырять, и процесс немного теряет смысл. Или я не очень понял про "отладить прошивку". Мне кажется, тут можно или отдельно карту отладить или отдельно передачу в РК, но это снова потребует ковыряния прошивки.
Потренируйтесь прошивать мегу, начать можно с загрузчика ардуино.
Далее, все работа идет через COM порт. Можно залить скетч для работы с картой SD. Потом, можно и avr-Си попробовать тоже самое. И все это строго на бредборде.
Не очень тоже понимаю, что конкретно это даст. Карту проверить? Можно проще, там надо SPI, и почитать ардуиной обычной, скорее всего, так и сделаю, чтобы убедиться что с картой в порядке все. Но меня тут больше беспокоит передача в РК, там я в принципе не очень понимаю процесс загрузки как построен в плане синхронизации.
может ли влиять клок на передачу данных в РК
Нет, протокол синхронный (самосинхронизирующийся). В пределах разумного (то есть рабочей частоты меги) конечно.
я в принципе не очень понимаю процесс загрузки как построен в плане синхронизации
отладить или отдельно передачу в РК
У Вас готовое изделие не работает, априори работающее у всех. Отлаживать тут нечего, тут надо искать ошибки и неисправности вашего случая.
что внутри происходит -- непонятно, но другие проекты тут слабо помогут
Непонятно, а значит не разобрались... :cool_std:
smartlime
22.10.2024, 17:00
У Вас готовое изделие не работает, априори работающее у всех. Отлаживать тут нечего, тут надо искать ошибки и неисправности вашего случая.
Это и имелось в виду. Понять, что именно не работает. Имея что есть, понять не получается, хочется посмотреть, что происходит и что идет не так. Но, возможно, проще будет собрать еще один дивайс или собрать на слепыше уже.
Непонятно, а значит не разобрались... :cool_std:
Разобравшись с другими проектами я не разберусь с текущей проблемой. Непонятно, что внутри этой конкретной железяки просиходит без логов и какого-то способа увидеть происходящее, кроме как светодиодом.
Да, можно разобраться с картой и убедиться, что она читается той же либой, что используется в прошивке. Это я сделаю. Но, не думаю, что какие-то абстрактные другие проекты могут помочь разобраться с передачей данных в РК.
- - - Добавлено - - -
Если честно -- у меня уже просто дело принципа "раскочегарить" это устройство)) Возможно, методом "соберу несколько штук"))
Непонятно, что внутри этой конкретной железяки просиходит без логов и какого-то способа увидеть
Для этого и существует возможно залить в железку что то еще, чтобы проще ее проверить. :wink:
Может ли такое быть из-за фьюзов?
Может, если выставлен фьюз CKDIV8 (по памяти) и клок в результате в 8 раз меньше, чем нужно, например.
если выставлен фьюз
Только при ошибках с фьюзами можно получить кирпич. Это важно понимать тем, кто полез прошить "по быстрому".
CodeMaster
28.10.2024, 18:25
Только при ошибках с фьюзами можно получить кирпич.
Почему у МК нет ноги/комбинации/команды "Reset to default state"?
потому что это ненужная функция. атмега раскирпичивается на параллельном программаторе
CodeMaster
28.10.2024, 19:16
потому что это ненужная функция.
Кому как, судя по этому форуму - функция не лишняя.
атмега раскирпичивается на параллельном программаторе
Который есть не у всех и если это DIP, то уже довольно геморрно даже имея программатор, нужны адаптеры. Во-вторых: а если это не ATmega, его окирпичить нельзя?
Справедливости ради, это не проблема какой-то отдельной конструкции, это общее для всех AVR-ок.
Думаю, каждая тема, где есть они, рано или поздно сводится к обсуждению программаторов и проблем программирования.
PIC-и, например, окирпичить невозможно. Только сжечь. Но и конструкций на них значительно меньше.
SoftFelix
07.12.2024, 22:25
Цитата Сообщение от smartlime Посмотреть сообщение
Я так понимаю, прошивка эта
Нет, уже устарела
Есть новая
А есть где-нить этот фикс скомпилированный для Атмега328 (hex)???
- - - Добавлено - - -
Представляю вашему вниманию исправленный мною исходный файл, а также собранную готовую прошивку.
Прошивка собрана под чип Atmega 8L, как и оригинал.
А для Атмега328 можно такой же фикс?
Добрый день. Я новый участник Вашей группы. Собрал устройство на плате от Чипкина, на 328 чипе , долго мучил правда, но в итоге запустил. Потом собрал на макетной плате на Atmega8A , не запускалась, пока не дошел до фьюзов, как оказалось у меня, фьюзы- если я скачиваю прошивку из 28 страницы- обновленную, встают перед программированием не так как нужно. Приходиться переставлять. Может у меня только так ? Программатор ТL488II Plus. Основной вопрос такой, глубоко не копал, но на РК86 проект Киселева , с клавиатурой на плате. SD card , подключается хоть 328 хоть 8А чипе, и запускается. А вот сделал переходник на Спектр001- плата как в журнале Радио 86 года, но на Ру6 32 КБ, запускается, но встает только рамка, без файлов внутри. Где может быть проблемам? Разьемы? Старые ит д. Можно совет куда в первую очередь смотреть? И Что значит рамка? Какой этап загрузки не проходит? Может в схеме или прошивке РК отличия?
Справедливости ради, это не проблема какой-то отдельной конструкции, это общее для всех AVR-ок.
Кроме китайских AVR-ок. Их окирпичить невозможно, т.к. у них нет фьюзов.)
Ведущий_специалист
29.01.2025, 18:21
...но встает только рамка, без файлов внутри. Где может быть проблемам? Разьемы? Старые ит д. Можно совет куда в первую очередь смотреть? И Что значит рамка? Какой этап загрузки не проходит? Может в схеме или прошивке РК отличия?
Попробуй скачать ВСЁ содержимое флешки из эму80 (сд карту радио86 рк). Там и шелл рабочий и допиленный бут. Не факт что еще прошивка самой атмеги живая, потому как за последние 2 года нашлось куча багов в ней.
Попробуй скачать ВСЁ содержимое флешки из эму80 (сд карту радио86 рк).
Воспользовался советом - скачал файлы (вернее перенес файлы в папках на флешку, перед эти форматировал ее - форматировать получается или FAT-32, или FAT кластер 512). Как я изначально писал у меня изготовлено два SD Card устройства на Atmega328 и Atmega8A они оба работают ( по крайней мере появляется рамка и появляются в рамке папки с файлами, и игры с папок запускаются) на РК86 проект Киселева (тот что клава на плате, и внешний порт выведен на 26 пин разъем и питание +5В и земля).
А на Спектр-001 выведен порт на разьем 32 пин. (я изготовил переходник) подцепляю к нему ROM диск (у РОМ диcка распиновка один в один как у SD Card ( - все работает штатно, из ПЗУ все в ОЗУ переноситься и как положено запускается)- то есть порт ВВ55 работает на Спектре-001.
Цепляю к Спектру- SD-Card с файлами из
- скачал файлы с эму80, и на Спектре-001, считывает данные Boot в ОЗУ, запускаю и все виснет как после сброса и экран пустой. Запускаю все тоже самое на РК86 Киселева- все работает штатно. (На нем и старые файлы работали) а на Спектре стало хуже, уже и рамки нет.
Странно все конечно- у них с адресацией портов не должно же быть проблем? (реализация дешифратора четь отличается). Вообще у штатного РК86 из журнала- адреса порта внешнего какие? Подскажите теперь куда копать?
- - - Добавлено - - -
то есть порт ВВ55 работает на Спектре-001. Мысль- может он не работает на передачу, при тех признаках, что я описал выше?
Ведущий_специалист
30.01.2025, 10:42
Boot проверял считаное с оригиналом? Порт на выход? может быть и такое попробуй запиши в него что нибудь и тестером померь единицы. Чудес не бывает, если на киселеве работает то и на остальных должно работать.
Boot, считывает корректно. Заменил ВВ55, ничего не поменялось . Чесно сказать не знаю как записать что либо в порт. После того как по команде G, появляется рамка, на клаву не реагирует. На входе CS появляется высокий уровень. И все блокирует. И еще если ПЗУ монитора шевельнуть в панельке, то появляются артефакты и в них читаются названия игр из папок, которые не появились в рамке, но где то в ОЗУ присутствуют. То есть они скачались, но не встали как надо. Я в тупике пока.
Нашел решение. А было вот что, Спектр-001, мой выходил как то из строя - включался, и не чего на экране не было. Прошелся осциллографом по ногам РУ 6 и обнаружил на паре РУ 6 не характерный в сравнении с другими сигнал , поставил панель, воткнул в нее другую Ру6 - и комп заработал. Отложил комп в сторону, а сейчас стал экспериментировать и не пошел девайс SD Card на нем, и самое интересное что с ROM диска программы шли. У меня и мысли не было, что с ОЗУ есть проблемы. Сегодня решил запустить тест и тест показал не исправность РУ 6, ту что я менял. Вынул ее - но только сейчас заметил на РУ6 что стоят в компе две точки на всех МС РУ6, а я поставил РУ6 на ней 3 точки. Заменил ее на Ру6 с 2 точками и CD Card заработал. Что точки на Ру6 означают? И второй вопрос- игры и софт что в папках проекта SD Card, на сколько я понимаю имеет в начале файла некие особенности. Я к тому, что как правильно поступить- хочется иметь часть софта и игр на ROM диске - и для того чтобы их туда поставить, надо модифицировать файл под запись ? или есть готовые именно под ROM прошифки? Как люди поступают?
Step777, работа ром-диска и сд-карты отличаются. При работе с ром-диском комп работает как с памятью, т. е. выставляет адрес ячейки и считывает байт, при работе с сд-картой происходит сначала загрузка загрузчика, который и грузит в память программы по последовательной шине. Поэтому у Вас вполне нормально может работать ром-диск и не работать сд-карта - принцип считывания через порт разный. Для сд-карты не нужно ничего подготавливать, rk-файлы берете для эмуляторов и записываете их на карту, поищите их и здесь много и на других сайтах.
- - - Добавлено - - -
Для ром-диска файлы действительно надо подготавливать, весь процесс был описан в журнале Радио, номер не подскажу, может кто-то знает. Если на ром-диске только одна программа, то ничего готовить не нужно - программа записывается как есть и грузится директивой R по нужному адресу...
Хотел запустить игру Шахматы, там где фигурки на доске. 7120 до адреса размер около того, с СД не идет, в РОМ качнул, тоже не идет , много нулей в начале в коде, пробовал стартовать с разных мест. Может она на бейсике конечно. Просто были программы которые если начало файла обрезать, 4 +- адреса они шли в ром, хотя до обрезания не шли. И еще если прога в Бейсике, ее я так понимаю в таком случае с СД не запустить? или я ошибаюсь? или можно ли, в Бейсике с РОМ диска файл скачать и запустить ? Может уже вопрос не в той теме задаю. СД то уже заработал. Хотя есть вопросы и по нему. Можно в нем взяв файл- отредактировать и сохранить- вернув на СД или что то типа того.
- - - Добавлено - - -
Теперь думаю, может Шахматы не от РК, а например от Микроши или еще чего (GAM)
вот шахматы для РК: https://86rk.ru/emulator/#eyJjb21wIjoicmFkaW8tODZyayIsImZpbGUiOiJHQU1FUzIvQ 0hFU1MuR0FNIn0=
скачать можно, кликнув на дискетку, путь: GAMES2/CHESS.GAM
Пробовал его и с СД карты и с ПЗУ запускать - не идет, вернее не его, у меня где то скачанный такой же есть, проверил пока без полной верификации вроде одинаковые.
Пробовал его и с СД карты и с ПЗУ запускать - не идет
Я уже написал, что файлы для эмуляторов (*.gam, *.rk и т.п.) запускаются с сд-карты, а для запуска их из ром-диска нужно из этих файлов убрать заголовок, если не ошибаюсь, то первые 4 байта, где записан адрес загрузки и длина.
А есть где-нить этот фикс скомпилированный для Атмега328 (hex)???
Нет, не было.
А для Атмега328 можно такой же фикс?
Ну раз больше некому, пожалуйста. :rolleyes_std:
81926
SoftFelix
10.02.2025, 08:35
Ну раз больше некому, пожалуйста.
Спасибо.
В какой среде эти исходники компилируются?
Serg6845
10.02.2025, 11:26
Спасибо.
В какой среде эти исходники компилируются?
так это не исходники, это готовая скомпилированная прошивка.
Спасибо.
В какой среде эти исходники компилируются?
CodeVision AVR V2.05.0
SoftFelix
10.02.2025, 12:11
так это не исходники, это готовая скомпилированная прошивка.
Я понимаю. Имелась в виду изначальная мессага (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=1181662&viewfull=1#post1181662).
SoftFelix
10.02.2025, 21:13
Ну раз больше некому, пожалуйста.
86rksd_328_hex_rom_fix1b.zip
Что-то с ошибкой AVRDUDE заканчивает программирование.
Cформированная командная строка:
avrdude.exe -p m328p -c usbasp -P usb -U flash:w:"K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex":a
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude.exe: Device signature = 0x1e950f
avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex"
avrdude.exe: input file K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex auto detected as Intel Hex
avrdude.exe: writing flash (9494 bytes):
Writing | ################################################## | 100% 3.30s
avrdude.exe: 9494 bytes of flash written
avrdude.exe: verifying flash memory against K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex:
avrdude.exe: load data flash data from input file K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex:
avrdude.exe: input file K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex auto detected as Intel Hex
avrdude.exe: input file K:\ZX_SPECTRUM\РАЗНОЕ\РАДИО-86РК SRAM\radio-86rk-sdcard\NEW ERROR FIX\86rksd_328_hex_rom_fix1b\86rksd.hex contains 9494 bytes
avrdude.exe: reading on-chip flash data:
Reading | ################################################## | 100% 3.00s
avrdude.exe: verifying ...
avrdude.exe: 9494 bytes of flash verified
avrdude.exe: safemode: Fuses OK (E:04, H:D9, L:E2)
avrdude.exe done. Thank you.
Прошивка заливается, вроде даже работает, но смущает окно ERROR в конце программирования. Может из-за того, что у меня 328P?
Проект взят отсюда (https://github.com/andykarpov/radio-86rk-sdcard), все должно идеально работать.
у меня 328P
В архиве же текстовик вот такого содержания
Chip: ATmega328P
Clock frequency: 8,000000 MHz
Program type: Application
Memory model: Small
Optimize for: Size
(s)printf features: int, width
(s)scanf features: int, width
Promote 'char' to 'int': Yes
'char' is unsigned: Yes
global 'const' stored in FLASH: No
8 bit enums: Yes
Enhanced core instructions: Yes
Automatic register allocation: Yes
Smart register allocation: Yes
Build: 2100
10872 line(s) compiled
No errors
8 warning(s)
Bit variables size: 0 byte(s)
Data Stack area: 0x100 to 0x1FF
Data Stack size: 256 byte(s)
Estimated Data Stack usage: 96 byte(s)
RAM Global variables area: 0x200 to 0x4E0
RAM Global variables size: 737 byte(s)
Hardware Stack area: 0x4E1 to 0x8FF
Hardware Stack size: 1055 byte(s)
Heap size: 0 byte(s)
EEPROM usage: 0 byte(s), 0,0% of EEPROM
Program size: 4747 words (9494 bytes), 29,0% of FLASH
- - - Добавлено - - -
смущает окно ERROR в конце программирования
Покажете?
- - - Добавлено - - -
avrdude.exe: safemode: Fuses OK (E:04, H9, L:E2)
avrdude.exe done. Thank you.
В приведенном логе, я не вижу ошибок. Наоборот написано, что все ОК.
SoftFelix
10.02.2025, 22:30
Покажете?
Вот так заканчивается прошивка оригинала от 2014-го года.
81942
Вот так заканчивается прошивка вашим хексом.
81943
Ничего больше не трогаю, только меняю хексы прошивки.
Даже после окна еррора, Атмега запускается и мигает светодиодом без сд-карты. Подключать к РК уже сегодня сил нет, завтра проверю...
Вот так заканчивается прошивка вашим хексом.
А Вы попробуйте убрать из пути к файлу слово ERROR :v2_dizzy_roll:
Оболочки умом и сообразительностью не отличаются. Думаю, она просто неверно парсит лог )
SoftFelix
11.02.2025, 11:52
так это не исходники, это готовая скомпилированная прошивка.
cy6, вечером дома попробую. Но если ЭТО окажется причиной... У меня там папка называется NEW ERROR FIX.
Ведущий_специалист
11.02.2025, 16:23
Вобщем навеяло... Сколько читал эту тему - у всех проблема с фьюзами, и будь оно неладно - лажа пошла именно с того, что не помню уже кто - переписал зачем то ПО на мегу328. Появилась и без того путаница с версиями помимо авторских болячек. Поэтому возникло предложение - а что если потихоньку начать заменять этот контроллер.... другой специфичной штуковиной? Микросхема представляет собой законченное микроконтроллерное устройство его не нужно прошивать. Это CH376S. Вешается благополучно прям на шину вм80 и требует адреса для CS и пару адресов для различения команда/данные. Из плюсов - устройство умеет как сд карту так и USB флешку. Все программно готово - разворачивать на конечной машине фат - не нужно.
Из минусов - нюансы при пользовании и невозможность что то корректировать внутри.
Я поизучал тему и написал подобие командной строки, при помощи которой можно определить наличие самого контроллера в шине, наличие подключенного диска. также можно смонтировать командами систему (disc mount). Могу также стабильно считывать из корневого каталога содержимого (именя папок и файлов) а также считывать небольшие файлы. Вобщем осталось это окультурить и впихнуть в пзу. Работоспособность проверялась на рк86 и северной пальмире. При наличии заинтересованных могу оформить в отдельную тему, где будем обсуждать схему, подключение, код, программу, и дальнейшее развитие.
лажа пошла именно с того, что не помню уже кто - переписал зачем то ПО на мегу328
Нет, лажа с этого не пошла. Люди не разбираются во фьюзах, это нормально.
С этого пошел прогресс, и массовое использование данного устройства.
Адаптировал для меги328 код Андрей Карпов (https://zx-pk.ru/members/7731-andykarpov.html), автор данного топика. :)
Зачем, потому что изначальный код Алексей Морозов (https://zx-pk.ru/members/6677-vinxru.html) запихал в мегу8 ради спортивного интереса и дешевизны последнего.
https://github.com/andykarpov/radio-86rk-sdcard
путаница с версиями
Есть две единственные версии, в чем путаница?
CH376S
Чип очень китайский и не сказать чтобы новинка.
Вешается благополучно прям на шину
В случае с РК, игры с шиной это чревато. И лажа может быть похуже фьюзов.
Не зря ведь авторы дали "на растерзание" именно ППА (дополнительную ВВ55а).
И самая большая лажа, что у РКшек нету системного разъема.
Для экспериментов вещь интересная, для массовых экспериментов - не очень.
оформить в отдельную тему
Очень верное замечание, поддерживаю.
- - - Добавлено - - -
вечером дома попробую
Попробовали? :smile:
Serg6845
11.02.2025, 23:09
Микросхема представляет собой законченное микроконтроллерное устройство его не нужно прошивать. Это CH376S. Вешается благополучно прям на шину вм80 и требует адреса для CS и пару адресов для различения команда/данные. Из плюсов - устройство умеет как сд карту так и USB флешку.
только сделано довольно бестолково - лог. уровни на SD те же что и на шине, т.е. нужен конвертор уровней либо на шину либо на SD. либо на SD забить и юзать USB SD свисток.
Я поизучал тему и написал подобие командной строки, при помощи которой можно определить наличие самого контроллера в шине, наличие подключенного диска. также можно смонтировать командами систему (disc mount). Могу также стабильно считывать из корневого каталога содержимого (именя папок и файлов) а также считывать небольшие файлы. Вобщем осталось это окультурить и впихнуть в пзу. Работоспособность проверялась на рк86 и северной пальмире. При наличии заинтересованных могу оформить в отдельную тему, где будем обсуждать схему, подключение, код, программу, и дальнейшее развитие.
есть SDOS с поддержкой CH376
https://zx-pk.ru/threads/29892-sd-karta-i-sdos-dlya-8i-bitnykh-pk.html?p=1205312&viewfull=1#post1205312
на РК не проверялось по причине отсутствия у меня РК. исходники открыты, в 2к ПЗУ помещается (еще место остается).
- - - Добавлено - - -
Чип очень китайский и не сказать чтобы новинка.
зато стоит втрое дешевле той же меги и дает USB host со всеми вытекающими. и поддержку почти всех видов FAT.
В случае с РК, игры с шиной это чревато. И лажа может быть похуже фьюзов.
Не зря ведь авторы дали "на растерзание" именно ППА (дополнительную ВВ55а).
можно и на ППА повесить, ничего сложного. только тормознее будет в разы.
SoftFelix
12.02.2025, 00:13
Попробовали?
Из другой папки прошилось без проблем! Я в шоке!...
Из другой папки прошилось без проблем! Я в шоке!...
От чего шок то? :biggrin:
Оболочка сканирует текст невпопад, заметила слово "error" и выдала его.
В лог выдается путь, так оно туда и попало.
Интересно, есть ли у моей любимой "SinaProg" такой же дефект.
- - - Добавлено - - -
Короче, прошивка для at mega 328p (https://zx-pk.ru/threads/24092-sd-kontroller-ot-vinxru.html?p=1210624&viewfull=1#post1210624) годная, это самое главное.
SoftFelix
12.02.2025, 00:19
Сколько читал эту тему - у всех проблема с фьюзами
Для ATMega328P рекомендую такой набор. Особенно это касается установок BODLEVEL в Fuse Extended Byte. У меня в практике уже несколько раз было, что в Атмегах слетала прошивка или ЕЕПРОМ из-за полного отключения BODLEVEL, включая данный девайс.
В данном случае BOD устанавливается на уровне 4.3В. (https://www.engbedded.com/fusecalc/) Это означает, что при понижении напряжения питания до 4.3В, микроконтроллер "нажмёт" внутри себя RESET и прекратит работу. Это спасает от слёта прошивку, и, особенно, данные EEPROMа.
Ведущий_специалист
12.02.2025, 12:02
только сделано довольно бестолково - лог. уровни на SD те же что и на шине
Та не, есть же достаточно дофига различных "свистков" и переходников
есть SDOS с поддержкой CH376
а вот это очень круто, не знал и ломал голову где бы подсмотреть, ибо примеров с гулькин нос.
можно и на ППА повесить, ничего сложного. только тормознее будет в разы.
В этом и вся фишка. Устройство в шине по моим прикидкам будет работать раза в 2-3 быстрее контроллера Алексея.
И раз уж на то пошло. Я вообще экспериментировал с шиной - подтыкая устройство на горячую. Ничего криминального особо не увидел, правда наблюдались некие сбои программно, из за чего сделал вывод - лучше не стоит подключаться "на ходу". А вот замена подключения через ППА... ну хз. Безопасность ради чего? это раньше процессор стоил как паровоз - сейчас стоит 20-100р. Даже если и произойдет неждан - можно починить.
- - - Добавлено - - -
И самая большая лажа, что у РКшек нету системного разъема.
По поводу Ваших опасений о том, что рк не имеет доп дешифратора для адресации доп устройств. Вот из за таких как Вы рк86 и застрял в одном месте лет на 30 потому что народ придерживаясь "аутентичности" и каких то канонов, заставлял себя свято верить в то, что собрав истинный рк на ру3 и с журнальными ошибками, он становится обладателем воистину чудной машинки, увы которая годится только под музейный экспонат и максимум пылится на полках не получая ни малейшего развития.
Я когда собирал рк86 - циган (на планарах и 580ик80) старался максимально придерживаться изначальной схемы, но все же сунул дополнительно ид7 и вывел системный разъем а бонусом поимел и ви53. Зато получился удобнейший аппарат с развитием.
Извиняюсь за оффтоп. Ничего личного, опять же навеяло....
из за таких как Вы
Ничего личного,
:v2_dizzy_indy: ,
том, что рк не имеет доп дешифратора
Еще раз. И самая большая лажа, что у РКшек нету системного разъема. Физически нет.
Вместо него сделали разъем ППА. У этого есть причины и следствия.
Какой дешифратор? )
рк86 и застрял в одном месте лет на 30
Это мы все застряли на 30 лет назад, специфика увлечения такая - ретро.
народ придерживаясь "аутентичности" и каких то канонов
Да, и еще черно-белый голый аппарат. Тот самый, из журнала.
Было бы странно предложить человеку. А вот собери не "тот самый", а "неведомую херню", которая возможно будет работать (местами). Ради хайпа и экспериментов.
Эксперименты дело нужное и просветительское, но только в узком кругу типа "нии".
При чем тут "культмасс просвет" и телепередача по субботам, не ясно.
И, вообще, предлагаю разговор по делу. А не гуманитарно-просветительский, или историко-археологический. :smile:
- - - Добавлено - - -
Я вообще экспериментировал с шиной - подтыкая устройство на горячую. Ничего криминального особо не увидел, правда наблюдались некие сбои программно, из за чего сделал вывод - лучше не стоит подключаться "на ходу".
:v2_jawdr:
то раньше процессор стоил как паровоз - сейчас стоит 20-100р. Даже если и произойдет неждан - можно починить
Ничего себе совет, глушить процессоры стаями.
Поэтому возникло предложение - а что если потихоньку начать заменять этот контроллер.... другой специфичной штуковиной?
Проще, чем вайфай девайс, всё равно не получится: https://zx-pk.ru/threads/35692-internet-dali!.html?p=1208186&viewfull=1#post1208186
Есть апогей и к нему шел такой накопитель. стоит атмега8А. как работает не знаю. что с ним что без него. выходит только приветствие в углу Апогей и все. пробовал загрузить с внешнего F кой от фонаря 0.100 и т.д. и запуск . ни чего . Правда функцию Л не проверял на карте есть какието файлы. но что значат не знаю. ркр точно есть. папка специалист есть . не хочу тыкать в слепую. по самой плате есть такой проект ? кто такую плату развел и что туда прошил? Спасибо за любую инфу. Кстати есть на апогей весь комплект схем , дстался в упаковке с кучей инструкций только без касет. могу оцифровать кому надо.8210382104
Запускаться должен командой R0,100, потом G0
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot