Имитатор Д3-28 на платформе x86/AMD64

Усилиями уважаемого Sinus´а проект имитатора Д3-28 пополнился версией для комплексов с 128 килобайтами памяти. Это очень важно, так как в нашем распоряжении имеется много программного обеспечения именно для систем с расширенной памятью.
Отметим, что данная версия имитатора способна в полном объеме исполнять и код для 32-килобайтных систем. То есть, создан универсальный имитатор Д3-28.
Как и любое программное обеспечение, «имитатор-128к» должен пройти этап тестирования сообществом. По просьбе автора выкладываем имитатор и сопутствующие ему файлы на этой странице (ссылки на скачивание в конце).

Основные изменения «имитатора-128к» по сравнению с версией от ноября 2018 года:
— расширена функциональность — добавлена работа с новыми кнопками ДУП и РЕД,
— реализована работа с режимом ПРД и ПРС,
— расширено Руководство (добавлены справочные данные по кодам дисплея, по номерам ошибок и по редактированию в Бейсике и в Выстре, описаны новые режимы),
— текст Руководства привязан к файлам в обновлённом архиве в папке txt — в нём описана работа с программами из папки txt (раздел 10 Руководства),
— в папке txt обновлен демо-файл game_1WAR_bas.txt, добавились файлы с «061-тестом» и c тестом клавишных кодов, ряд раскодировок с кассет.
В целом, новая версия позволяет успешно запускать большинство доступных программ.

В июле 2019 года автор имитатора выпустил новую версию, в которой побеждены все обнаруживавшиеся раньше «загадочные глюки» (устранены глюки в имитации работы с Машязом, Бэйсик-Планом, Фортранами -85 и -5М) и, самая большая радость, — удалось, наконец, полноценно запустить МХТИ-128.
Очень подробно обо всем этом Sinus написал в нашем форуме.

В октябре 2019 года имитатор снова обновился. В нем серьёзно уточнена имитация фрязинского дисплея (команд управления маркером в крайних позициях строк, команд сдвига текста вверх и вниз — введена для этого вторая страница ОЗУ дисплея).  Также доработана имитация записи/чтения с МЛ.
Это позволило получить полную функциональность таких программ, как КИПР и МХТИ-128С (и может других).

Апрель 2020 года вместе с Sinus’ом подарили нам новую версию имитатора. Эта версия содержит исправления, которые стало возможно сделать благодаря помощи уважаемой Наталии Xlat по изучению особенностей команд Д3-28. Подробности опытов на «живой» Д3-28 можно узнать здесь.

Главная черта этой версии — в имитаторе побеждены все ранее обнаруженные баги, включая остававшийся до сих пор незамеченным дикий глюк вывода отрицательных чисел в Бейсике с форматом печати «не по умолчанию».

Кроме того:
— В «Руководстве к имитатору» написан заново раздел 9. Теперь там перечисляются врождённые недостатки имитатора и применённые способы его тестирования. В разделах 11-13 местами уточнено изложение материалов о программировании на Фортране и Выстре.
— В имеющуюся в zip-архиве с имитатором папку «txt» добавлены новые файлы с библиотеками программ для Д3-28 и с подробными пояснениями в конце.
В частности:
— В файле diakonov-87__bas.txt — несколько примеров из хорошей книги В.П. Дьяконова «Справочник по алгоритмам и программам на языке Бейсик для персональных ЭВМ» М, Наука, 1987; плюс пара самодельных примеров «студенческого» уровня сложности на основе алгоритмов из этой книги — вычисление интегралов для расчёта импеданса дипольной антенны, численное интегрирование уравнения Шрёдингера в задаче квантовой механики о гармоническом осцилляторе.
Имитатор здесь служит как бы «продвинутым научным калькулятором в ПК». Конечно, до Маткада он не дотягивает, но всё-таки кое-что может 🙂 и как бы продлевает жизнь упомянутой старинной книге, полезной для самообразования.
— В файле q-eq_ris-9_KP-543_KP-7765_KP-34321.txt сравниваются возможности компиляторов Фортрана и Выстры в создании программ для «голой» Д3-28, без периферии.
— В sip_sip-wyw-auto_sip-upr-auto__vystra-texts.txt — конкретные примеры применения Выстры для создания программ опроса периферийных устройств, подключаемых к Д3-28, в том числе, может быть, через интерфейсные платы в УСО. Заодно поясняется общий метод создания программ на языке «Выстра» через вызовы самодельных процедур с передаваемыми и возвращаемыми параметрами; ими могут быть как одиночые числовые переменные, так и массивы чисел.

Ссылки на этой странице обновлены и указывают на самую последнюю версию имитатора.

Для начала работы с имитатором рекомендуем ознакомиться с очень подробным Руководством и внимательно выполнить рекомендации, изложенные в его начале относительно соответствия клавишей клавиатуры системного блока Д3-28 и клавиатуры современного персонального компьютера. Ничего сложного нет, все очень логично и продуманно, запоминается быстро.
Системные требования изложены на второй странице Руководства, но позволим себе их повторить здесь:
— имитатор запускается и исполняется на компьютерах под управлением Windows начиная с 98/ME и до 10.
— имитатор запускается и исполняется на компьютерах под управлением Linux + WINE любых версий. Никаких настроек не требуется — просто запускаем «экзешник» под WINE и работаем.
— и под Windows и под Linux программа имитатора является перемещаемой, то есть не привязана инсталлятором к определенному месту на диске компьютера и запускается из любого места на диске. Однако, просим учитывать, что экзешник imitator_1_0.exe НЕ является перемещаемым ОТДЕЛЬНО от обязательной подпапки «bmp«. Перемещаемым является каталог с экзешником и с обязательным подкаталогом «bmp«.
— к монитору никаких требований нет.
В связи с этим, опробовать имитатор в работе очень просто и быстро.
Предлагаем очень краткую инструкцию по «быстрому старту». Она является выжимкой из полного текста и позволяет быстро и просто запустить имитатор и убедиться в его работоспособности.
А убедившись, что это работает, Вы с интересом прочитаете и основной текст Руководства. Несмотря на обилие пунктов нашей «краткой» инструкции, выполняется она в считанные секунды, если ее сначала прочитать до конца и разобраться с клавишами и меню.
Итак, коротко:
1. Скачиваем на свой компьютер (лучше в отдельный каталог) архив с файлами имитатора и распаковываем его. Особенность распаковки состоит в том, что в результате, в избранном каталоге Вы получите исполняемый файл imitator_1_0.exe и подкаталог bmp с изображениями. Именно в таком составе — «экзешник» с подкаталогом — имитатор является перемещаемым. Без изображений работа имитатора невозможна — учитывайте это при распаковке или перемещении.
2. Скачиваем туда же файл Бэйсика 3А Д3-28 (текстовый файл в формате имитатора).
3. Скачиваем туда же файл программы на Бэйсике.
Если Вы распаковали полный архив с файлами имитатора по п.1, то все необходимые программы находятся в подкаталоге txt и скачивать их по пп.2,3 не надо — они у Вас уже есть в подкаталоге txt.
4. Запускаем исполняемый файл имитатора (экзешник). В Линуксе — под WINE.
5. Видим на экране нашего компьютера изображение системного блока Д3-28 с клавиатурой, кассетным накопителем на магнитной ленте и индикаторами.
6. «Ставим» в НМЛ (он справа) кассету с Бэйсиком. Для этого, с помощью меню, пункт «File», выбираем ранее скачанный (или из подкаталога txt) файл Бэйсика 3А. Справа на картинке НМЛ «закрывается» крышкой, это признак того, что кассета установлена в НМЛ.
7. Нажимаем на клавиатуре нашего компьютера клавишу «С» латинской раскладки (это аналог «С» на клавиатуре системного блока Д3-28, нажимаем на всякий случай, чтобы быть уверенными, что начинаем работу с «чистого листа»). Далее по тексту жирным шрифтом выделены клавиши на клавиатуре персонального компьютера (не Д3-28).
8. Нажимаем «L». Это мы дали команду клавишей «СЛ» на клавиатуре Д3-28 прочитать Бэйсик с кассеты.
9. Нажимаем «К» латинскую (это «КП» на клавиатуре). На индикаторе видим контрольную сумму Бэйсика — 157107.
10. Снова «С».
11. Теперь «S». Это запуск программы Бэйсик 3А.
12. Теперь переключаемся через пункт «View» верхнего меню имитатора в режим отображения дисплея.
13. Нажимаем на клавиатуре клавишу «F5» (переводим дисплей в режим OnLine). Видим приветствие Бэйсика.
14. На приветствие и вопросы отвечаем «Enter». Если у Вас до сих пор нет термопечатающего устройства, не расстраивайтесь — Sinus об этом позаботился. ТПУ так же имитируется, как и Д3-28, только печатает не на бумагу, а в файл. Подробности в полном тексте Руководства.
15. Как загрузить и выполнить Бэйсик-программу, скачанную в п.3, читаем в Руководстве начиная со страницы 37.

Успехов!

Файлы для скачивания:
Полный архив файлов имитатора, программ, ZIP, 8.2 Мбайта и исходников, ZIP, 2.6 Мбайт от Sinus´а.
Руководство пользователя, PDF, 156 страниц, 5.3 Мбайта.
Бэйсик 3А Д3-28 кс.157107, TXT, 111 кбайт.
Бэйсик-программа 1WAR, TXT, 71 кбайт.