PDA

Просмотр полной версии : Орион 2010 на ПЛИС



nihirash
26.09.2020, 14:23
Добрый день!

Никогда не видел в живую Орион и хотел бы его пощупать.
Для этого адаптировал ядро с ZXUno от Andy Karpov к ZXDOS+/gomaDOS+ и понял, что монитор, что идет в комплекте может буквально ничего(из рабочих команд я там нашел только G).

С моими SDHC картами это дело даже не пытается работать, просто SD карточку я возьму, но на нее же надо что то записать?

Есть ли у кого готовые образы которые можно будет накатить? Есть ли какие-нибудь демонстранции, как это должно работать правильно?

fifan
26.09.2020, 19:01
При чём здесь Орион 2010? Вопрос сводится к ПО для записи на SD карту. Не понятно название темы.

Error404
26.09.2020, 23:38
адаптировал ядро с ZXUno от Andy Karpov к ZXDOS+/gomaDOS+


Из этих имен собственных не увидел ни одного знакомого. А это важно понимать, как минимум для того чтобы знать какую именно схему подключения SD-карты (а их есть как минимум три разновидности для которых реально есть ПО на Орионе - N8VEM,MSX,PVV) эмулирует ПЛИС.



и понял, что монитор, что идет в комплекте может буквально ничего(из рабочих команд я там нашел только G).
С моими SDHC картами это дело даже не пытается работать

Какой именно Монитор?
Монитор-1 имел много встроенных команд.
Монитор-2 не имел встроенных команд.
Монитор-3 v1 имел много встроенных команд (пожалуй поболее чем в М1), Мониторы-3 v2 и выше пошли путем выкидывания консольного функционала и добавления другого более полезного (например встроенных загрузчиков с дисковода, HDD). Впрочем, ЕМНИП сам обработчик консольного ввода и две команды (G, L) в них все же оставались. В м3-v5 некоторых версий добавлены загрузчики с SD-карт схем N8VEM,MSX (https://github.com/serge-404/AltairDOS/blob/master/App/source/Monitor3/mon_ide_sd.txt) (что отражено в их имени)
м3-v7 умеет грузиться с RS232 по протоколу X-Модем.

Короче, телепаты в отпуске, пишите подробности. :)

nihirash
28.09.2020, 16:35
Простите, был не прав. Слегка в запаре - вот и написал нечитаемую ерунду.

При старте вижу надпись: "BETA 3.?/Z", если нажать F8 получаю "MON3.5/SD/RK" с каким либо кодом ошибки(сейчас содержимое моего экрана:
MON3.5/SD/RK 005E
ERROR
>_
).

Если выключить-включить и жмакнуть F8 - получаю ошибку 003F.

На карте(2GB microSD не SDHC - с этой же картой РК86 работает) - образ sdgames.ohi или как-то так, который нашел на форуме.

Орион у меня портирован с вот этого: https://github.com/andykarpov/orion2010-zxuno
Подозреваю, что это порт еще какого-то порта.

Напомню, орион в жизни не видел - хочу пощупать, посмотреть. Пробовал писать команды, как в РК-86, но результат у меня только от GF800 есть хоть какой-то(ребут). Пробовал конфигурить в корку РК-86, в ней грузить вулкан, например, переконфигурить плис в орион и запускать через G0 игру - работает)

andykarpov
28.09.2020, 20:46
Орион у меня портирован с вот этого: https://github.com/andykarpov/orion2010-zxuno
Подозреваю, что это порт еще какого-то порта.

Блин, помню что откуда-то переносил, но хоть убей не вспомню - откуда и чем все закончилось :)
В репе даже readme нету :)

Кажется это все по мотивам исходников Ewgeny7 / ivagor / b2m под плату DE1.
Тут смесь проектов VGA_1_13_DE1 и TV_1_13, режим VGA/ТВ вывода переключается по кнопочке, вроде бы.
Но деталей не помню, кажется нужно как-то SD-шку готовить, ибо с нее что-то грузится (?).

b2m
29.09.2020, 09:28
Кажется это все по мотивам исходников Ewgeny7 / ivagor / b2m под плату DE1.
Моего кода там нет.

nihirash
29.09.2020, 14:38
Насколько я понял, тут используется монитор м3-v5.

SD карта подключена по стандарту MSX.

Но что означают коды 003F и 005E - для меня тайна.

Можете подсказать, что эти сообщения означают и куда копать? К gomaDOS+ могу цеплять пока только microSD карты, скоро доедет девборда Next'а - могу на нее портировать тоже и посмотреть на ней с крупной SD-шкой на 2ГБ. Более мелких у меня нет.

Error404
29.09.2020, 15:37
Насколько я понял, тут используется монитор м3-v5.
SD карта подключена по стандарту MSX.
Но что означают коды 003F и 005E - для меня тайна.


Судя по исходникам (https://github.com/serge-404/AltairDOS/blob/master/App/source/Monitor3/M35zrks.mac), в версии Монитора для SD-карт, все коды, кроме C3 (шестнадцатиричный 0C3h) - это прямая трансляция регистра ошибок, и что означают эти коды надо искать в спецификации на SDC. Могу лишь предположить, что с другим экземпляром может и нормально заработает? Код C3 возвращается самим монитором - это когда сектор прочитался корректно (т.е. карта читается), но не содержит CP/M-MBR-загрузчика в секторе с LBA=0. Образ sdgames.ohi, записанный от начала SD-карты (стартуя с LBA=0 любым посекторным копировшиком) содержит такой загрузчик в секторе с LBA=0. Как бы там ни было, до прочитывания первого сектора похоже дело не доходит. Кстати, чем записываете образ?

Версии Монитора v3.5 c индексом S и С (для двух разных схем) c первичной загрузкой с SD-Card транслируются с общего исходника условной компиляцией, и там есть такое:


IF N8VEM
DEFB 'MON3.5/RK/SD'
ELSE
DEFB 'MON3.5/SD/RK'
ENDIF

т.е. у вас действительно используется версия Монитора для схемы МСХ (монитор соответствует схеме).

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

используется ли в аппаратной реализации управление питанием SD-карты соответствующим битом порта SD-карты? Попробовать бы его отключить (оно AFAIK никем не проверялось в аппаратных реализациях, хотя и прописано в Мониторе)

nihirash
29.09.2020, 16:11
Кстати, чем записываете образ?

hddutils или как его там.

Через DD залить - тот же результат.



используется ли в аппаратной реализации управление питанием SD-карты соответствующим битом порта SD-карты? Попробовать бы его отключить (оно AFAIK никем не проверялось в аппаратных реализациях, хотя и прописано в Мониторе)

На карту питание подается постоянно. Та же карта заводится в РК-86(а РК-шка не хотела тоже работать с SDHC, но РК сама по себе дико кривая в HDL).

Собрал версию с двумя мониторами(m3-v5) - если карта не отвечает(не MSX) то код ошибки 00FF. Т.е. общение с картой пытается идти. Но не особо помогает ему это. Инициализация карты через другое ядро только убирает шаг с ошибкой 3F.

nihirash
29.09.2020, 19:23
Взгляд в сырки, а так же в спеки работы с SD-картами мне сказал, что этот монитор не должен грузить компьютер ни на одной карте, если она честно работает.

Суть ошибки - CRC ERROR на командах. Верный CRC шлется только для первой команды, остальные получают ровно тот же CRC. Что съедают некоторые карты, остальные - нет.
Я на досуге покурю монитор - может соберу исправленную версию.

Error404
29.09.2020, 23:03
Суть ошибки


ну, это как бы "by design" :) , о чем честно сообщается авторами алгоритма (и это не я):
ld a, 095h ; crc7 only valid for initial CMD0
если честно, уже ковыряя ПРО думал стоит ли это исправлять в загрузчиках где борьба обычно идет за каждый байт (а передача CRC ко всем командам код заметно увеличит), и в большинстве мест решил оставить как есть, благо SDC карт которые это не воспринимают в моей коллекции нет (а там их полдюжины разных, что конечно не говорит что таких карт не бывает). Попробуйте, может и заработает на поправленном мониторе?

nihirash
30.09.2020, 21:43
В общем, с моей карточкой нужен честный обмен данными :-)

Попробую портировать на другую доску - на ней есть разъем под большую SD-карточку. Тут еще валяется 2GB - может на ней заведется.
Плюс написал ребятам - обещали дать даже на 128Мб флэшку