И SD BIOS там же.
Вид для печати
А монтажка для последней платы есть? В области доработок на монтажных полях. Или хорошее фото платы.
Там, как и писал, доработки свелись к добавлению простейшего УНЧ на кт315, и внедрению dc dc повышающего на 34063 + ICL7660. На плате есть шелкография с номиналом каждой детальки.
https://i.ibb.co/cDkk7nt/palm-dcdc.jpg
https://i.ibb.co/VN3qdnQ/palm-unch.jpg
- - - Добавлено - - -
https://i.ibb.co/dWYqkDv/palm.jpg
В общем нашел причину странного запуска платы, это память 62256, если ее снять, то плата стартует нормально, видать до этого я что-то еще исправил, ибо месяц назад она без этих же микросхем также не запускалась. Заказал новые, будем смотреть.
Сейчас без памяти плата запускается сразу, клавиатура тоже стартанула без проблем, кстати и изображение вывелось на моник - Dell u2713MHt, но слишком задрано в угол.
https://i.ibb.co/tZ5KfPL/IMG-20240517-120733.jpg
https://i.ibb.co/Q9HLMrv/samsung152s.jpg
самсунг152s
Одно скажу, разные моники по своему реагируют. Кстати а если настройками немного покрутить?
Добро пожаловать в ряды обладателей пальмир. Я кстати недавно адаптировал Crossfire со звуком на нее, может нужно кому?
Подскажите, а прошивка для Atmega8 контроллера sd-карты где лежит? В архивах на гитхабе я чей-то ее не вижу.
Здесь лежит. Прошивка типовая.
На карту записать это.
Собрал контроллер SD, прошил прошивкой по ссылке выше, фьюзы выставил 0xC4 0xD9 (по информации с гитхаба andykarpov). Не очень понял как с ним работать, залил на карту папку boot, вне зависимости от наличия карты получаю Ошибка SD: FE . Что я делаю не так и куда копать?
https://i.ibb.co/X2sq4V9/IMG-20240527-163232.jpg https://i.ibb.co/3yxkD9J/IMG-20240527-163311.jpg
UPD: Вопрос снят, после n-ного количества нажатий на ресет на плате SD контроллера, он стал запускаться, точнее стартуешь пальмиру, нажимаешь на ресет на плате контроллера, после этого обращаешься к нему
https://i.ibb.co/VgB3CrK/IMG-20240528-101505.jpg
Не, у меня мега8, на гитхабе в описании у него -
Я там выбрал Internal RC OSC 8MHz, остальное оставил как есть. Чуть позже попробую ваши фьюзы поставить.Цитата:
use bits для МК
На сайте http://www.engbedded.com/fusecalc/ можно посчитать fuse bits для Вашего МК. Необходимо выбрать
Internal RC OSC 8MHz,
убрать галочку Divide clock by 8 internally
Все остальное можно не трогать или по желанию (например параметры brown out detection).
Для меги8 у меня вот так заработало:
avrdude -c usbasp -p m328p -U flash:w:86rksd.hex -U lfuse:w:0xc2:m -U hfuse:w:0xd9:m -U efuse:w:0xff:m -F -B 2400
Вот с этими заработал сразу, без дополнительного нажатия на сброс
А эти не подошли, контороллер плата не увидела
Пришли белые колпачки на кнопки, а вот про прозрачные сверху забыл, буду дозаказывать, пока сделал вот такой колхоз.
https://i.ibb.co/bFBbRmN/IMG-20240530-102847.jpg
Лазерный принтер, самоклейка (печатаем, складываем в два слоя), потом обычный офисный ламинатор.
Получаем ламинированную самоклейку, режем с припуском примерно в пол мм, клеим, потом канцелярским ножом срезаем припуск по контуру клавиш. Можно еще нулевкой подровнять срез.
Я на этом форуме фото Киселевского варианта с такими самоклейками выкладывал.
Звучит сложно, но примерно часа за два получается аккуратная клавиатура.
Вложение 80870
Вложение 80871
Клавиши и стабилизаторы с безродной клавиатуры, купленной с мелкой неисправностью за 300р на авито по пути домой с работы...
И, все-таки, какие фьюзы верные для Меги8?
Мегу прошил с 3F DF E$.
привключение, как и при сбросе контроллера светодиод зажигается и гаснет. Т.е. карту видит. Но по директиве R не читает. ничего.
Эти самые, снятые с живого контроллера.
Работает
Ничего это как? Что то должен читать, даже с пустой ВВ55.
Проверяйте ВВ55, пайку, цоколевку разъемов.
- - - Добавлено - - -
Чистые Меги8 Lock=3F, Hi=D9, Low=E1, если что. В обоих типах корпусов.
Добрый вечер всем кто в теме. Собрал я "Северную Пальмиру", запустил и даже контроллер Sd работает, но! Хочу спросить у авторов - почему такое скудное описание работы с аппаратом? Без серьёзной подготовки
аппарат не запустится. Это отталкивает многих начинающих. Я со своим более чем 30 летним опытом и то "повозился". Но! Вопросы остались. 1. Почему нет возможности сохранить программу набраннyю на Basic на SD карту в формате .BSM? В эмуляторе это есть. Ну и соответственно нет возможности прочитать. При попытке сохранить набранную программу из Basic в BSM пишет ошибка: SD 03, при попытке сохранить файл RKL тоже пишет ошибка 03, но что-то сохраняет и оно потом не читается. То есть пропадает смысл в попытке освоения написания программ, их не сохранить. Большой вопрос по адаптации уже многих существующих программ для РК86. Пальмира получилась чем-то отдельным сама в себе. Адаптированных программ откровенно мало, а описания хотя бы общего принципа адаптации нет. Может кто поделится? Проект в целом замечательный и судя по продажам наборов - спросом пользуется. Давайте поможем начинающим. Поделитесь бОльшей информацией.
С уважением и надеждой на понимание.
1 что означает серьезная подготовка? к чему подготавливаться? берешь плату, паяешь исправные микросхемы, включаешь и оно работает. Распишите что в вашем понимании означает эта подготовка.
2 Скудное описание работы с компьютером? все знают как работать с монитором рк86. Все остальные доработки Виктор расписал от слова более чем. Что именно непонятно? В программной или аппаратной части работы?
3 в чем собственно подвел вас ваш 30 летний опыт? с чем пришлось возиться?
По вопросам которые остались. Не понятно почему вы не можете сохранить как и считать бейсик. есть же специальная директива после набора которой идет перехват стандартного обращения к порту магнитофона. Я проверял как на ед микрон так и на различных бейсиках - работа везде одинаково стабильна, не вызывает никаких ошибок.
4 по адаптации программ. существует ДОСТАТОЧНО программ как написанных с нуля так и просто адаптированных на пальмиру как мною так и многими пользователями. Я например если продаю пальмиру то прилагаю к ней ВЕСЬ набор софта игр и прочего, который входит в сд карту. Да, пальмира отличается немного от рк, тем, что нужно при настройке вг75 изменять пару байт чтобы монитор понимал VGA стандарт. Да собственно никто и не спрашивал как рк софт адаптировать. Мало того, 50% софта УЖЕ работает после набора директивы V32
По продажам наборов честно говоря вообще не в курсе ибо сам продаю готовые изделия, куда входят и софт и описание и набор всего что нужно для работы. Кто продает наборы - и те кто их покупает - ну видимо живущие где то в своем мире. Ибо вы - уважаемый, первый кто начал критиковать. Но по мере ответов на данный пост наверное смогу вам как то помочь.
А разве кто то делал поддержку иных файлов кроме типа RKR на SD карте?
Как Леха (vinxru) сделал софт и прошивку для запуска игр, так оно и есть.
Сохранить данные если, они сохранятся с заголовком tape-файла, если бы делали вывод на магнитофон директивой O (и для чтения директивой I соотв).
- - - Добавлено - - -
Пальмира это новый аппарат, для тех кто любит неизведанное и новое.
Какие еще начинающие? Для них даже классический РК едва ли положен. Будет писанина про проблемы с запуском.
- - - Добавлено - - -
Еще немного про Бейсик. Если сохранять через директивы Монитора, а потом загружать директивами Монитора (или на SD карту), то фокус едва ли пройдет.
Некоторые бейсики любят очищать буфер при запуске. И лишь некоторые спрашивают NEW?
- - - Добавлено - - -
В эмуляторе Вы в папку на диске сохраняете, а не на SD карту. Особенность эмулятора такова, что он эмулирует папку на диске как "SD карту".
эмулятор магнитофона работает с папкой TAPE скорее всего товарищ не прописал ее на диске и решил узнать что и как.
- - - Добавлено - - -
Ну Я пальмиру и задумывал, чтобы поиметь рк максимально удобным и интересным инструментом для программиста. За 4 года конечно я еще придумал многое чего да и сообщество тоже думает хорошие идеи. Но делать пальмиру 1.5 или пальмиру 2 пока рановато. Эта машинка досих пор не исчерпала свои возможности, хотя появились несколько отличных игр практически реализующие ее предел. Недавно наконец то запустил i2c адаптер , пишу понемногу студию к нему. Можно сделать программатор еепром, ну или как раз для начинающих удобный инструмент для осваивания I2C.
Спасибо за ответы. Ну тогда по порядку. 1- папку TAPE создал ибо читать инструкции умею 2- речь идёт о сохранении файлов набранных в самом Basic директивой csave и загрузкой cload так как понятно, что директивы монитора здесь не сработают. 3- если остановиться на только на RKR, то возникает вопрос на чём программировать? Если было задумано как " рк максимально удобный и интересный инструмент для программиста". Тогда нужен как минимум компилятор с Basic и то вопрос, а он как будет сохранять файл. Да машинка интересная, но как то пока сама по себе отдельно. Собирал с целью освоить что- то новенькое и заодно перегнать старые архивы, в том числе и на Basic. Видимо придётся серьезно заняться Sd адаптером. Ещё раз Всем спасибо!
- - - Добавлено - - -
Про подготовку. Да, почти все пишут " ПРАВИЛЬНО собранная схема из ИСПРАВНЫХ деталей начинает работать сразу", но чаще всего это не так. Нюансы были есть и будут. Как тема с фьюзами. Хотя казалось бы чего проще-открыл калькулятор фьюзов и вперёд. А на практике ... Сколько вариантов только в этом форуме. В общем, наверно Вы правы, Пальмира не для начинающих. А жаль.
Да сам Basic запускается, но сохранить на SD никак. Ошибка 03. Может конечно у меня не та версия Basic. Ну вопрос по адаптации. Подскажите где почитать про настройку ВГ75, с удовольствием займусь этим.
z88dk
Еще раз. В настоящий момент, адаптер SD карты за авторством vinxru, умеет записывать и читать ТОЛЬКО файлы в tape-формате Монитора.
Физически, это дамп любого участка памяти (как в директиве D) с адресом запуска (как для директивы G) и контрольной суммой (как в директиве O).
И не только в Пальмире, но и на любом РК.
Вы про что, про эмулятор emu80?
- - - Добавлено - - -
А вот про что
Цитата:
E<0|1>
Включение (E1) или выключение (E0) режима эмуляции магнитофона с использованием SD-контроллера (см. ниже). Включенный режим эмуляции магнитофона обозначается буквой E в приглашении Монитора.
Ну так файлы то все равно в формате Монитора записываются.Цитата:
Режим эмуляции магнитофона
При включенном режиме эмуляции магнитофона (директива E1) происходит перехват процедур записи/чтения байта с магнитофона и производится попытка перенаправления обращений к магнитофону в файл на SD-карте.
Для эмуляции магнитофона всегда используется директория TAPE в корне SD-карты, в текущей версии Монитора изменить ее нельзя. Для определения факта окончания обращения к магнитофону используется факт вызова процедуры чтения клавиши с ожиданием F803. Для программ, которые не обращаются к данной функции по окончании обращения к магнитофону, эмуляция может оказаться невозможной.
Прошивка МК адаптера SD карты добавляет этот заголовок всегда.
К сожалению нет, за городом - выходные. Да, сначала включаю Е1, эмуляцию магнитофона. Потом пытаюсь операторами Basic сохранить файл. Получаю стандартное приглашение из МОНИТОРА
А дальше - ошибка 03. Сохраняет в RKR, возможно, но из Basic по команде CLOAD не читает. Вот и вопрос Ч.Д.?
nikitamo222, добрый день!
Я старался описать программную часть (Монитор) достаточно подробно. По документации по аппаратной части лучше к автору (Ведущий_специалист).
В любом случае, если остались вопросы, как по железу, так и по программной части, я или Максим постараемся на все ответить и при необходимости дополнить документацию.
Вообще, у меня сохранение из Бейсика работает без проблем - как на реале, так и в эмуляторе Пальмиры в Emu80.
Если у вас не работает, давайте попробуем разобраться, в чем дело. Для начала хотелось бы узнать версию Бейсика, возможно, какие-то проблемы с конкретной версией.
Во-вторых, попробуйте то же самое сделать в эмуляторе Пальмиры Emu80.
Единственное замечание: расширение файла - это условность. Просто при сохранении из Бейсика нужно вручную указать расширение .bsm, автоматически всегда подставляется .rkl.
А cy6 не права, простите:
Нет, файлы записываются без заголовка Монитора. Это самые обычные bsm-файлы бейсика.
По адаптации отпишусь чуть позже.
Вы прошивку в МК меняли?
- - - Добавлено - - -
Из прошивки МК
- - - Добавлено - - -Код:// Посылаем адрес загрузки
send(ERR_OK_RKS);
sendBin(buf, 2);
send(ERR_WAIT);
// Корректируем указатели
wptr += 4;
readedLength -= 4;
// Длина из файла
lengthFromFile = *(WORD*)(buf+2) - *(WORD*)(buf) + 1;
Мои утверждения не голословны, а основаны.
Утверждаю, что адаптер SD карты не поддерживает работу с данными. Мы это уже обсуждали в группе.
Так как есть поддержка только заголовков .RKR. При том, на уровне прошивки МК.
- - - Добавлено - - -
Что такое заголовок RKR файла, смотрим тут, например
Нет
Этот фрагмент кода относится к функции Exec, а есть еще Open, Read и Write
Неверно, поддерживает (этот режим я предлагал использовать для файлов cas, например "Суры")
Обсуждали, но видимо, друг друга не поняли :(
Про подготовку. Да, почти все пишут " ПРАВИЛЬНО собранная схема из ИСПРАВНЫХ деталей начинает работать сразу", но чаще всего это не так. Нюансы были есть и будут. Как тема с фьюзами. Хотя казалось бы чего проще-открыл калькулятор фьюзов и вперёд. А на практике ... Сколько вариантов только в этом форуме. В общем, наверно Вы правы, Пальмира не для начинающих. А жаль.
Да сам Basic запускается, но сохранить на SD никак. Ошибка 03. Может конечно у меня не та версия Basic. Ну вопрос по адаптации. Подскажите где почитать про настройку ВГ75, с удовольствием займусь этим.
Нет, вот к этой
Кусок выше из readInt.Код:void cmd_read() {
DWORD s;
// Длина
recvBin((BYTE*)&readLength, 2);
// Режим передачи и подтверждение
sendStart(ERR_WAIT);
// Ограничиваем длину длиной файла
if(fs_getfilesize()) return;
s = fs_tmp;
if(fs_tell()) return;
s -= fs_tmp;
if(readLength > s)
readLength = (WORD)s;
// Отправляем все блоки файла
readInt(/*rks*/0);
}
- - - Добавлено - - -
Ну и при запуске (Exec) предполагать что это только файл rks тоже неудобно, мягко говоря.
Тот же бейсик файл, можно было бы запустить в коммандере, отдав его дисковому бейсику (принимает параметром имя файла bas).
- - - Добавлено - - -
Самая лучшая книга для старта, и не только про ВГ75
Домашний компьютер / Г. В. Зеленко, В. В. Панов, С. Н. Попов. - Москва : Радио и связь, 1989
Спасибо за ссылку, когда-то читал, но видно давно. Перечитаю
Хотя, Виктор как обычно прав. :cool_std:
При rks == TRUE Чтение идет с заголовком, а rks == FALSE без заголовка.Код:readInt(char rks)
Ну и
Exec зашит для заголовка RKR. Даже загрузочные файлы должны быть с ним.Код:void cmd_boot_exec() {
...
readInt(/*rks*/1);
}
void cmd_read() {
...
readInt(/*rks*/0);
}
Это прошивка в МК. Теперь глянем еще раз в SDBIOS
- - - Добавлено - - -
Что за ошибка, скрин можно?
- - - Добавлено - - -
Так пишет?
Код точно 03?Цитата:
ОШИБКА SD
Лучше всего, конечно, первоисточник. На русском, можно почитать, например, здесь.
Применительно к Пальмире. В общем случае полноценная адаптация программ с РК/Микроши/Апогея для нативного режима Пальмиры (48К) может оказаться нетривиальной задачей. Приходится переключать знакогенераторы, переделывать вывод звука, менять экранную область, адреса системных вызовов и т.п. С некоторыми играми пришлось основательно повозиться. Проще всего использовать режим 32К, максимально совместимый с РК-86 32К. Программы, которые самостоятельно не перепрограммируют ВГ75, должны запускаться без проблем. Единственное - не будет звука на EI/DI. Если же перепрограммируется ВГ75, то типовые изменения будут следующими (ниже обозначения из даташита):
LLLL - высота символа в скан-линиях. На РК по умолчанию высота 10, на Пальмире - 16. Меняем так. чтобы общее количество скан-линий в кадре вместе с VV примерно соответствовало стандарту видеовыхода (312 на РК и 525 на Пальмире).
UUUU - позиция подчеркивания (курсора), меняем в соответствии с LLLL. Только в случае >=8, если не нужны разрывы между рядами символов, то форма курсора (CC) должна быть в виде блока.
ZZZZ - меняем с 3 на РК на 8 на Пальмире (для кварца видео 24 МГц).
Например, типовая процедура программирования ВГ75 на стандартный режим 30 строк, 78 символов:
преобразуется в такую:Код:LXI H, 0C001H
MVI M, 0
DCX H
MVI M, 4DH
MVI M, 1DH
MVI M, 99H
MVI M, 93H
...
(здесь еще дополнительно увеличено на 1 значение VV и включен режим непрозрачных атрибутов)Код:LXI H, 0C001H
MVI M, 0
DCX H
MVI M, 4DH
MVI M, 5DH
MVI M, 0FFH
MVI M, 0D8H
...
Вообще, не совсем тривиальная задача, нужно погружаться в тему. Если будут вопросы - готов ответить.
- - - Добавлено - - -
это:
ERR_NOT_OPENED 3 // Файл/папка не открыта
Но понятнее пока не стало...
Пробую приложить 3 скрина.
- - - Добавлено - - -
Вот такая получается картинка, при попытке сохранить - ошибка 03, при повторной попытке спрашивает разрешение на перезапись (то есть что то он записывает), при попытке чтения ошибка B4.