Обмен программами в режимы выполнения?

В общем идея сверкнула, ещё когда документацию разглядывал - что если сделать устройство, которое как петля будет переписывать память программ по команде ! Этакий расширенный диск, можно и дисковые функции повесить туда и промежуточный ОЗУ, чтобы было где компилировать окончательный код.
Может ли калькулятор обмениваться программами находясь в режиме выполнения ???

Описываемая вами петля вполне реальна. На другом конце кабеля может находиться компьютер или другая ЭКВМ. Можно даже придумать общий протокол, для этих двух случаев. Со временем умельцы выпустят более простую и дешёвую специализированную «затычку», например на Ардуино.

В теории проблемой может стать то, что последовательный порт МК не может одновременно работать портом данных и принимать команды внешнего доступа. То есть его придётся переключать в режим внешнего доступа и обратно. Если оба МК окажутся в режиме внешнего доступа, связь разорвётся — одной из ЭКВМ придётся самостоятельно переключиться обратно.

Ну и быстродействие, конечно, будет не такое, какое требуется от обычной команды записи в память. С другой стороны, все ресурсы подчинённой машины будут в распоряжении главной ЭКВМ, и таких подчинённых машин может быть несколько. Можно хранить гигабайты и играть на спикерах, как на органе. :-)

Я так понял запись в память программ в момент работы МК невозможно, д.б. включена блокировка клавиатуры. Значит петля компиляция-выполнение невоможна??? Попробуем представить. Компилятор вызывает устройство на порту и пишет в него код, формируются файлы программ. Затем дёргает устройство и сразу завершает выполнение. Устройство перехватывает контроль, устанавливает блокировку, пишет в память программ, вроде может даже запускает программу после снятия блокировки. Вроде должно работать с компьютера. У меня один МК-161, да и разумнее использовать не два МК, а некий контроллер размером с LPT ключ. Представьте, что такая реализация может дать для занятий Каллисто, скомпилированный код может работать со скоростью языка МК !!!

Менять программу в другом МК-161 во время его работы я не пробовал, но проблем не вижу, т.к. есть команды внешнего доступа A0/82 и A0/83 для удалённого запуска и остановки программы. Вся информация по внешнему доступу здесь:
http://mk.semico.ru/mk152d2.htm

В Каллисто компиляция на соседнюю ЭКВМ в код МК не планируется. Если вы не завязаны на отечественные решения, такую особенность можете встроить в eForth. Вот там места много осталось. Из СП-Форта можно даже какие-то оптимизации заимствовать, чтобы ещё быстрее работало.

Насилу настроил через переходник USB-COM раньше заливал через честный COM. Обновил прошиву до 1.23. Я смотрю оно может не только запускать программы по команде извне, но и останавливать их. Я склоняюсь к мысли, что здесь и не Форт нужен, а просто некий транслятор, Форт подразумевает шитый код и интерпретатор, а здесь генерируем код и сразу выполняем. Неплохо бы сделать чтобы на калькуляторе можно было писать на компактном языке вроде MK-Compiler, чтобы оно разворачивалось в портянки форм и т.п. и чтобы картинки с диска вставлялись в код. В этом деле меня греет, что можно достичь хорошего быстродействия и в то же время не надо решать дурную задачу по написанию прошивки под 51-ый камень. По поводу альтернативной прошивки, я пытался как мог. Купил пару камней W78LE в точности таком же корпусе как W77LE516P, переходник, хороший программатор. Распиновка переходника 100% правильная. Программатор всё шьёт, а эти два камня как мёртвые заразы. Они вообще бывают живые, сколько до этого покупал, все дохлые какие то. Ни одного MCS51 кроме ATMEL в DIP40 корпусе живого не нашёл. Да и неправильно это, надо в будущее смотреть, если писать прошивку то уже ARM таки. На этом 51-м свет клином не сошёлся. Хотя было бы интересно программировать калькулятор на Z80, чтобы выполнялось из ОЗУ как на спеке и туда можно было так же писать (какой то TI-84 получается).

Попробую на Питоне обмен прикинуть для начала.

Собранное оборудование это хорошо.

Если есть финансирование, можно разрабатывать ЭКВМ следующего поколения. Мой выбор здесь не ARM, а камень с отечественной системой команд. Пусть на ПЛИС, если ещё нет в кристалле.

На нынешнем этапе, пока финансирования нет, разработка и отладка прошивки в уже готовых корпусах и платах МК-161 может серьёзно облегчить следующий этап, после нахождения денег.

У меня родные W77LE516P (не W78, а прямо те самые камни) программируются и считываются нормально. До сих пор дело только в первом машинном коде, который смог бы «задышать» в старой МК-161, которые с панелькой.

Чтоже до исполняемого кода в ОЗУ, если форт-машину (адресный интерпретатор + примитивы) запихнуть внутрь камня, высокоуровневый шитый код из ОЗУ будет исполняться побыстрее, чем машинный код Z80 на Спектруме. Всё-таки 22 МГц.

Где взять камень с "отечественной системой команд". Единственный такой попадался, который с PIC16 по ногам полностью совпадает, но по системе команд реально самобытная советская вещь. Но сейчас то откуда такой возьмётся. W77LE516P к ним явно не относится. Я так ещё и не провёл эксперименты с малопотребляющими ПЛИС, хотя платки валяются, там можно создать свою систему команд, сразу с BCD на борту, но сами то ПЛИС опять же не отечественного производства. Или вы имеете в виду МУЛЬТИКЛЕТы какие нибудь ????

Z80 кстати тоже не обязан выполняться на 3.5МГц, можно раскочегарить, вот пишут что современный ez80 гонится до 50 Мгц сейчас.

Русская система команд была в Б3-34. И микрокод тоже русский. В МК-161 под низ подложили американскую систему команд 8051. И хотя она недоступна извне, многие хардкор патриоты/русофилы именно за это ругают всю архитектуру.

Русские процессоры есть — Эльбрус, Мультиклет. Для ПМК они, увы, не годятся. И не только по цене, энергопотребление тоже не для карманных устройств.

На форуме Форта есть несколько моделей отечественных Форт-процессоров, пока существующих на ПЛИС. Выпуск ПМК может немножко помочь их реализации в ASIC. Особенно если ПМК станет популярным.

Также в Зеленограде выпускаются какие-то малопотребляющие процессоры для смарткарт. Их систему команд и можно ли реализовать на них форт-машину — пока не знаю. Третий вариант — Дельфин.

Да, ПЛИС по началу могут быть западными/китайскими. Но если код процессора наш, по мере развития отечественного производства можно будет перенести его в отечественный камень. Ситуация политическая и экономическая в России изменчива. Может проявиться меценат или раскулачат какого-нибудь олигарха, моя Школа при раскрутке в Европе может начать приносить прибыль, но всё должно быть подготовлено к этому моменту.

Есть желание оФортить 51-й совместимый кристал CY68013A, популярный для всяких народных логических анализаторов на нём
и простеньких плат соответственно, но пока себя не сподвигнул серьёзно в данном направлении, хотя возможности данного чипа уже рассмотрел и оценил. :)

Если это обсуждать в калькуляторном русле, то до сих пор нет народной схемы экранчика + клавы (в идеале ещё корпус).
Может за основу взять тот же мультиметр Семико, там места море под любой мозг и даже аккумулятор.

CY68013A может гнать хоть данные, хоть видеопоток (RGB) на высокой скорости в USB порт компьютера,
клавиатура, при этом, может быть как автономная так и ПК.

P.S. Как вариант есть у меня и платка Gameduino 1 (для вывода изображения на VGA разъём),
а так, любой LCD дисплей применяемый Ардуино - собществом может быть подходящим решением,
а клавиатура сойдёт и стандартная для ПК (PS/2, USB) ну или матрица кнопок на базе какого-нибудь мультиплексора или расширителя портов.

можно плавно перейти к Raspberry Pi ;)

PS2 клавиатура легко цепляется к микроконтроллерным штукам, и ощущения от работы на такой клавиатуре самые позитивные:

В плане калькуляторного использования, может быть оптимальный вариант т.к. имеет стандартно и аналоговые каналы
https://www.chipdip.ru/search?searchtext=tms320

P.S. Форт стародавний для них тоже какой то есть http://froth.sourceforge.net/ (сохранён в Webarxive)
Возможно есть ещё какие то варианты по использованию сильных сторон связки DSP и Forth.
В параллельной архитектуре на транспьютерах INMOS Форт был стандартным языком.

Для примера один автор делает на DSP игровую консоль
Игровая консоль на TMS320C6745 DSP http://forum.easyelectronics.ru/viewtopic.php?f=17&t=39290 (одно из мест в i-net представления данного проекта)

И как раз под STM32 в частности. Всё таки "клавишное" программирование - это своеобразный наркотик. Недавно изучал системы программирования HP 33s и HP 35s, хоть они и лишены во многом символьного манипулирования, а HP 33s ещё ограничена метками букв английского алфавита, но как красиво на них получаются разные вещи. По части программирования МК-161 вроде как шире, но на борту программу редактировать просто ужасно неудобно без меток и возможности вставки/удаления. В общем так подумать на МК-161 такой же графический экранчик, который можно купить в любом чипедипе, такая же клавиатура, который каждый может напаять на макетке. Всё вместе с платкой STM32 давно даёт желаемое. Но честно говоря, хочется праздника что ли, если сам себе компьютерную игру напишешь - играть будет не так интересно, если купить у другого. Может быть мы все не создали калькулятор мечты потому, что подсознательно не хотим знать как он устроен, чтобы исследовать его как новую игрушку ? Отсюда и увещевания к СЕМИКО и другим. Ну честное слово, мы же не такие безрукие, чтобы не смочь сделать простейшую ЭВМ и софт к ней, люди и не такие задачи решают на работах ! :-)

Всё таки "клавишное" программирование - это своеобразный наркотик.

Наверное, многие, я в том числе, получили импритинг с детства от экранчиков с железными кнопочками :)

Мой первый комп был МК-61 :-)

А мой Б3-34 :)

продают на Aliexpresse для проекта m5stack ссылка:
https://ru.aliexpress.com/item/32963872643.html?spm=a2g0o.productlist.0....

Насколько понял из описания подключается к I2C, т.е. насколько я понимаю (а понимаю немного) должна подойти к ардуино и распберри пай?

Клавиатура, имеющая в себе вторую "Ардуину" в качестве контроллера, немного перебор для микроконтроллерных девайсов. В моем stm32BASIC матрица опрашивается главным кристаллом.

Речь идёт о создании компактного устройства, который перехватил бы часть народу у Калифорнии. При этом речь может идти не о прямой конкуренции на рынке мобильников, а о создании нового рынка с нашими правилами, где айфоны и андроиды будут не столь конкурентоспособны, в новой парадигме.

Важный шаг в этом направлении сделал Новосибирск. Но до конца предложенную идею развить не смог, т.к. взвалил на себя слишком много попутных политических задач, не способных обьединить всё сообщество любителей калькуляторов.

Конечно каждому своё, но думаю нам всем не столько научный калькулятор нужен, сколько программируемый объект аля микроэвм или по сути ЭКВМ. Позиционировать сие устройство как калькулятор или математическое устройство - главная ошибка любителей. Получается СЕМИКО по большей части право. Наши общие хотелки думаю в большей части заключаются в чуть большей компактности и привлекательности вида (чтобы не страшно было в метро достать из широких штанов), а также в богатых возможностях программирования (КАК НИ КРУТИ), в идеале хочется хорошее быстродействие для произвольного кода, это значит надо дать доступ до машинного уровня или хотя бы позволить генерировать код в памяти программ (и то и другое СЕМИКО закрыло по разным причинам). Потом хотелось бы иметь возможность реализовать хороший интерфейс как на калькуляторах "потенциального противника", что то вроде софт-меню (хотя не обязательно обезьянничать, может и что то своё самобытное придумается), готовые режимы для построение графиков, систему компьютерной алгебры и чтобы это всё влезло в память, а значит: 1) Постоянной перезаписываемой памяти должно быть много 2) Должна быть гибкая система "библиотек", чтобы интерфейсы можно было приживить как родные и чтобы они между собой гладко стыковались (на RPL машинах единая фортообразная среда образуется). По сути для этого могла бы подойти даже среда МК-152/161, если доработать чуток железо (видимо потребуется более жирная прошивка, другой контроллер с более жирным ПЗУ) или сделать чтобы оно выполняло из SRAM, ну и связь с диском сделать более элегантно, не так отдельно как сейчас. Очевидно текущая идеология с единым пространство 10000 шагов программ не позволяет нормально реализовать "библиотеки" и всю среду. Получается нужны метки и динамическое выделение памяти под программу и остальное, то есть более RPL образное что то, хотя локально опять же можно выделять кратно 100 шагам советских моделей и позволить традиционные переходы, чтобы все старые программы работали (или по запросу, сколько страниц на метку сказал, столько кратно 100 выделили).
В общем для реализации даже того что было в HP 28S 10000 шагов будет маловато. Ну допустим оно будет не за раз, а считываться с постоянной памяти по мере вызова, например захотел построение графиков, нажал на соответствующее "приложение", подгрузились программы рисования графиков. Но этот "бухучёт" занятых страниц должна вести сама система. Получается некий пятачок ОЗУ 10000 или более байт программы, но на него проецируется множество "библиотек" на диске. Насколько я понимаю, ваш Каллисто так и работает.
В общем нужна аппаратная система, где возможны эффективные реализации сред вроде Каллисто в рамках единой идеологии (например советского наследия с опциональными метками) и достаточно памяти чтобы "библиотеки" не мешали друг другу в борьбе за ОЗУ. Мне кажется комичность ситуации с МК-161 в том, что для этого не хватает только разрешения записи в память программ, по сути тогда можно было оптимизировать многие циклы и выполнение стало бы эффективным, а диск и так немалый и с него разрешено считывать и да писать туда.
А там уж более жирную более портативную версию бы разработали. Может книгу всем сообществом напишем и доход от неё пустим на заказ СЕМИКО новой модели ??? :-)

Сейчас МК-161 это 10000 шагов для транслятора и 4К для исполняемого кода в ОЗУ (шитый код или п-код). К этому добавлено 3К экранной памяти для исходного текста программ, которые в крайнем случае могут добавляться к исполняемому коду.

Плюс в том, что 3К страницы исходного текста можно подгружать с диска. Как, впрочем, и 4К исполняемого кода могут подгружаться оверлеями. Скудно, но развернуться можно.

Думаю у этих перехватывать некого, эта тема ближе старцам, а молодёжь уже в планшетах сидит, по факту даже у швейцарца думаю продажи идут не ахти, видимо был какой то хайп и сплыл. Единственная мысль как придать этому продукту некую массовость, это привязать к нему образование, по сути с устройством продавать учебные курсы, в идеале одно дешёвое устройство+курс - а потом курсы разные и может быть дороже чем само устройство. Тематика на поверхности: программирование, естественные науки, построение своей системы компьютерной математики, электроника и всякие задачи аля ардуина. Можно даже попробовать такой курс создать под МК-161, чтобы помочь СЕМИКО в развитии, правда я сомневаюсь, что они сами видят применение их устройств за пределами ниши ПЛК. Вот как раз в ПЛК я думаю развернуться пока не получится (хотя тоже можно со временем). И ещё есть проблема высокой стоимости, машинка то неплохая, но 14 тыр за неё отдать никто не согласится даже с очень хорошим учебным курсом :-(

Думаю у этих перехватывать некого, эта тема ближе старцам, а молодёжь уже в планшетах сидит, по факту даже у швейцарца думаю продажи идут не ахти, видимо был какой то хайп и сплыл.

Я могу подтвердить - активность на швейцарском форуме по DM42 давна падала и сейчас там очень редко что-то появляется.

Единственная мысль как придать этому продукту некую массовость, это привязать к нему образование, по сути с устройством продавать учебные курсы, в идеале одно дешёвое устройство+курс - а потом курсы разные и может быть дороже чем само устройство.

С интересом наблюдаю за развитием TTL компьютера по форуму http://forum.Gigatron.io (http://gigatron.io)
есть даже некоторое желание собрать себе в каком нибудь варианте. :)
Данный проект, даже, в каком то смысле успешен.
"Гигатрон — самодельный микрокомпьютер без процессора" https://habr.com/ru/company/neuronspace/blog/465805/

P.S. При создании своего дизайна, автор рассматривал и существующюю реализацию Форт процессора на TTL.

Большая железяка, к телевизеру небось подключается. Тоже хорошо, но немножко из другой оперы. Хотя и под такие надо СКМ и прочие ништяки написать :-)

Вот идея создать ПМК, который был бы привлекательней планшетов — в своей области позиционирования, конечно. Удобное программирование и подключение внешних устройств, как в ЭКВМ, это хорошая затея.

Учебный курс не сработает паровозом. Такие вещи наоборот, утяжеляют вирусный процесс. У народа должна быть возможность купить и увлечься. В интимной обстановке, без контроля учителя. Тогда смогут заразиться и тысячи, и миллионы — в зависимости от интересности продукта, его доступности и рекламы.

Так курс вообще то в моём понимании не подразумевает (хотя и не исключает учителя), это что то вроде красочной увлекательной книжки-истории, аля "Путь к земле" или "Образовательная манга" плюс готовые программы на диске, как принято для ленивых и для самопроверки. ПМК интереснее планшета может взять своей ламповой-железячностью и близостью к электронике, т.к. планшеты плохо умеют управлять железом на низком уровне.

Вообще расцвет планшетизма ведь не убил древние популярные жанры. Например до сих пор люди платят за "интерактивную драму". Почему бы не создать такой жанр "ПМК образовательная драма". Можно книгу снабдить заданиями и от результата их выполнения спланировать переходы по страницам. Тогда наличие считающего аппарата становится оправданным как наличие игрального кубика в настольных играх.

Чтобы создать достойное продолжение «Пути к Земле», нужно четыре человека:
1. Писатель-фантаст
2. Программист ПМК
3. Лётчик-космонавт
4. Физик, учёный или инженер

Я могу выступать, как программист. Понимая при этом трёх остальных, так как учился на физфаке МГУ и увлекаюсь н/ф. Но этих трёх остальных членов коллектива тоже надо найти.

Научные модели космического полёта я могу запрограммировать разные, учитывая различные факторы. Каллисто может обеспечить читаемость программ и облегчить их доработку. Но лётчик-космонавт или хотя бы специалисты наземной части экипажа важны, чтобы подтвердить соответствие модели реальным космическим приключениям. И писатель-фантаст нужен, чтобы приключения были интересными, востребованными и близкими сердцу читателя, играющего в предложенные электронные игры.

В «Пути к Земле» Михаил Пухов был и программистом, и писателем. Соответствие использованной модели проверял лётчик-космонавт Ю.Н. Глазков, который тоже был не чужд научной фантастике.

Кое какие навыки есть. Можно попробовать.
Кстати почему обязательно космос и фантастика, можно попробовать проблемы астронавигации на море и экономику пиратского корабля например (да и физики там немало). Сколько надо воды и еды, куда и сколько плыть, вода быстро портится, но можно потратить топливо на кипячение, его можно добыть по пути из жира морских животных и с других кораблей, торговля и бои с предельным реализмом, да ещё сюжет навернуть как в Путь Земле, да ещё визуализация схематичная (графен не в приоритете). Сам бы в такое сыграл с удовольствием.

Писатель у нас здесь Vitasam. Не знаю, интересен ли ему такой проект. Нет физика и космонавта, для выстраивания и подтверждения математики.

Освоение космоса — главная задача человечества в наши века. Увод людей из космоса лично мне не интересен, даже если другие области, вроде поверхностных религиозных фантазий, финансируются сейчас щедрее.

Ну, если считать единственный текст, доросший до издателя, то да, типа писатель, застрявший в стиле советской НФ. Книга снята с продажи на Литрес, но легко гуглится. Однако я забрал права на книгу обратно и сейчас медленно пишется второе издание, которое я выложу в свободный доступ.

Уважаемый Арбинада скорее больше писатель, учитывая количество проданных книг его авторства :)

Проект (именно про космос) мне интересен, но я немного пессимистичен в том, что найдется много желающих в нем участвовать.

Мне была интересна разработка программ, помогающих «повторять» современные и перспективные космические путешествия: на орбиту МКС, лунные и марсианские перелёты, полёты к кометам, миссия Кассини-Гюйгенс и т.д.

Чтобы это развить до уровня Михаила Пухова, нужны хорошие литературные описания, адекватная математика и точные данные об этих полётах. Можно начать с малого, а потом развивать тему, давая читателям понимание, какие программы освоения космоса сейчас конкурируют.

Если сделать небольшую пробную статью, могу поискать в Москве возможности её публикации. Возможностей МК-161 должно хватить. Заодно больше ЭКВМ продадим, может Новосибирск слезет с печи и выпустит долгожданное обновление.

Начать можно с рассказа. Небольшого. Как у Пухова про полет Перепелкина с сыном. Затравка, интерес

Приветствую такое начинание.

Осталось найти космонавта. Или кого-нибудь, кто бы смог проверить полёты по нашим программам, сравнив с реальными современными запусками.

Один из интересных сюжетов — короткая двухвитковая схема полёта на МКС. Другой — необычная орбита лунной станции вокруг точки Лагранжа. Можно, конечно, взять космический транспорт Маска, как альтернативу самолётам. Или выдумать фантастический сюжет, как это сделал Михаил Пухов.

Сюжет - самое главное. Нужен гений Михаила Пухова...

Я недавно прочитал эту книгу. В сюжете корабль пришельцев притаскивает из пояса астероидов здоровую каменюку километров на 10 и вывешивает ее на геостационарной орбите. Попутно вынося несколько десятков геостационарных спутников. Я задумался, а каким маневром можно было бы такое провернуть.