Цитата Сообщение от barsik Посмотреть сообщение
Понятно, что проще повторить конструкцию с микроконтроллером Atmega и 'microSD' в качестве носителя. А мне как раз именно это кажется неламповым. Если уж всё заменять суррогатами, тогда проще не тратить силы, а сразу перейти на эмулятор.

Но у меня плохое отношение к этому по другой причине. А потому, что в такой конструкции нет DOS, причём общей DOS для всей платформы. Я не могу не имея ДОС написать текстовый редактор, Нортон, ассемблер или ещё что-то дисковое потому что DOS нет, и соответственно, нет функций DOS. А когда есть DOS, то тип носителя вообще без разницы..
Я сам за ламповость, но найти дискеты сейчас уже Большая проблема, а лет через 5-10 их вообще не будет, только в музеях...
Повторюсь, для Специалиста существует две реализации SD интерфейса, одна на Atmega, а вторая почти такая же как и РК-КНГМД, на дискретных элементах собрана схема для работы с SD ( ее HardWareMan делал для СпециалистаМХ2, а я реализовал ее на свой лад), написан элементарный DOS(sd_dos), который имеет усеченные команды для работы как на чтение, так и на запись. Этого достаточно для реализации всех остальных операций 'большой' DOS в виде внешних, запускаемых с той же SD карты файлов.

Вот возможности этой элементарной DOS:

Скрытый текст

- CD ИМЯкаталога - перейти в каталог с указанным именем;
- DIR - вывести список файлов и каталогов;
- ИМЯфайла.RKX(RKS для Специалиста std, RKX для СпециалистаМХ, RKR для RK-86 и GTP для Галаксии) - запустить файл, при этом расширение можно не набирать, будет произведена автоподстановка;
- R ИМЯфайла.РАСШИРЕНИЕфайла,АДРЕСкуда,СКОЛЬКОбайт - прочитать не запуская данные файла, начиная с указанного адреса в памяти и сколько байт (пример: R TEST.BIN,0ACD,5FE0 - читает файл TEST.BIN в память начиная с адреса 0х0ACD и до адреса 0х0ACD+0х5FE0=0х6AAD). Ограничение - нет проверки на фактическую длину файла и запрошенную на чтение, те можно запросить прочитать больше чем размер файла, поведение не определено;
- W ИМЯфайла.РАСШИРЕНИЕфайла,АДРЕСоткуда,СКОЛЬКОбайт - записать в файл данные из памяти, начиная с указанного адреса в памяти и сколько байт
(пример: W TEST.BIN,0ACD,5FE0 - пишет в файл TEST.BIN из памяти начиная с адреса 0х0ACD и до адреса 0х0ACD+0х5FE0=0х6AAD). Ограничение - нет
проверки на фактическую длину файла и запрошенную на запись, те можно запросить записать больше чем размер файла, поведение не определено.
Записать больше чем существующий размер файла нельзя, если записать данных меньше чем размер файла, то размер файла не меняется и остается
прежний;
- X - перейти в монитор, из которого был запущен sddos.
При выводе каталога по DIR печатается имя, расширение файла и его размер(что бы можно было использовать директивы R и W), а на директории
пишется DIR в поле размера файла. При запуске файла пишется стартовый и конечный адреса куда будет считан файл с карты.
[свернуть]

Этот sd_dos был проверен мною на трех разных платформах на реалах, (Специалист/СпециалистМХ2, РК-86 и Галаксия).
offtop: Для РК-86 я вообще сделал версию, которая работает через дополнительную ВВ55 ROMдиска, те не требует ни одного изменения в самом РК ( http://www.nedopc.org/forum/viewtopi...=16296#p132373 ).