vak: (Default)
[personal profile] vak
Помните модемы, бибиэски, скачивание файлов, протокол Zmodem? Нынешнее поколение только в кино видело. А по тем временам был вполне практичный способ распространения софта.

Я подумал: почему бы не приспособить старые проверенные методы для встроенного программирования? Взял и перенес утилиту rz из проекта mbzm в FP/M. Теперь можно легко и просто загружать файлы с локального компьютера в файловую систему Flash на плате RP2040. Давайте покажу.

Для передачи файлов понадобится эмулятор терминала minicom и утилита sz. Чтобы установить sz, используйте "sudo apt install lrzsz" в Ubuntu и "brew install lrzsz" в MacOS.

Чтобы передать файл на устройство FP/M, сначала подключитесь к консоли через USB с помощью minicom. Вы должны увидеть приглашение:
flash:/ >
Теперь нажмите Meta-S — должно появиться меню Upload. Это может быть Alt-S или Esc-S, в зависимости от конфигурации вашего minicom. Меню Upload предлагает список протоколов:



Выберите zmodem и нажмите Enter. Появится список файлов в вашем домашнем каталоге.



Выберите файл для засылки и нажмите пробел. Затем нажмите Enter. Начнется передача данных.



После завершения загрузки вы увидите соответствующее сообщение и окажетесь снова в командной строке FP/M.

Date: 2025-01-25 22:48 (UTC)
juan_gandhi: (Default)
From: [personal profile] juan_gandhi
Ой преданья старины глубокой! Я этот ZModem (а также XModem и YModem) программировал ещё в 1990-м году. Это был мой первый аутсорсный контракт. В результате чего в конце концов я и оказался в Скоттс Вэлли.

Date: 2025-01-25 23:30 (UTC)
juan_gandhi: (Default)
From: [personal profile] juan_gandhi
Ха! Наша имплементация была оттестирована на советских линиях. Новобанк (в Новгороде) использовал их для связи с деревенскими отделениями; у них и модем был суровый самопальный (made in Novgorod Ped) - когда начиналась сессия, вся деревня не могла никуда дозвониться. Восстановление сессии, регулирование размера блока, переговоры о параметрах передачи... всё было такое вкусное.

И на эти деньги я купил себе компьютер.

Date: 2025-01-26 16:47 (UTC)
From: [personal profile] slider2
ИМХО по нынешним временам крайне желательно иметь в FP/M хоть какой-то TCP стэк, и уже поверх TCP делать передачу файлов и т.п. (например - TFTP как минимальный вариант).

Для IOT девайсов наличие нетворка - стандарт, да и всякие другие девайсы тоже часто имеют WiFi со всем сопутствующем, так что наличие TCP стэка - практически must.

P.S. Для железа у которого нет WiFi/Ethernet - можно поддерживать что-нибудь вроде PPP (или по минимуму - SLIP) поверх USB Serial. TCP стэк можно сделать очень компактным, есть целый ряд реализаций (для Ардуины и т.п.), так что много места он не займет.

Date: 2025-01-31 18:53 (UTC)
From: [personal profile] slider2
👍
Гут!

В старые времена в ДОС я этим делом пользовался - грузил пакетный драйвер, а потом TSRы предоставляющие нетворк файловую систему и т.п. - была вполне рабочая схема.

Кстати, в ДОС со временем TSR начали использоваться фактически в качестве драйверов для всякого разного, вместо формального драйвера. Как вы это дело планируете в FPM - как более развитую систему драйверов или аналог TSR?