Просмотр полной версии : Практическое применение ДВК-2 как ЧПУ
Уважаемые специалисты по софту, пожалуйста посоветуйте среду программирования для ДВК-2 ( классическая МС1201.02 с двунаправленным портом принтера ) и дисководом МХ ( ? ).
Варианты :
Бейсик, Паскаль, др.
Задача - управление бытовой кухонной плитой.
Входы плиты ( оптосимисторы ) :
Биты по записи порта принтера :
001 - вкл. 1 конфорки
002 - вкл. 2 конфорки
004 - вкл. 3 конфорки
010 - вкл. 4 конфорки
020 - вкл. шкаф духовой
040 - выборка бита 001 коммутатора АЦП
100 - выборка бита 002 коммутатора АЦП
200 - выборка бита 004 коммутатора АЦП
Биты по чтению порта принтера :
0...7 - код с АЦП , показывающий температуру датчиков конфорок и шкафа.
АЦП выполнен на отдельной полуплате без доступа к сигналам МПИ.
Что должна уметь делать программа :
1. Иметь профили варки - кипячение, термостабиллизация, малый ход ( разогрев ) и др.
2. Делать лог ( запись ) на диск состояния конфорок каждые 1...5 мин.
3. Иметь таймер отключения ( даже при работе без профиля )
4. Пароль на запуск - что бы дети не баловались.
5. Допускать отключение электросети с возможностью продолжения работы по включению, в зависимости от профиля.
SuperMax
22.08.2022, 13:37
я в свое время систему климатконтроля писал на ассемблере
(она выложена у меня на форуме)
однако вот эту задачу я бы писал на сях, требования к скорости отсутствуют, а вот отладка кода потребуется
ps: и сеть я бы тоже предусмотрел ибо централизованное управление системами явно удобно втч и с точки зрения мониторига
FORTRAN
И подтянуть такую нехилую по размеру OTS
И подтянуть такую нехилую по размеру OTS
И ладно. FORTRAN для фронтэнда, Macro для бэкэнда (как сейчас принято изъясняться). Отладка и распечатка в FORTRANе проще. Потом, при желании, можно переписать на Macro. Или ДВК-2 не потянет FORTRAN? (С ней не работал, Э-60 - в кодах, ДВК-3 и СМ4 - FORTRAN+Macro)
Отладка и распечатка в FORTRANе проще
Я тоже так думал, пока не наткнулся на пакет DSMAC. После этого особого смысла на PDP-11 в ЯВУ не вижу
... пока не наткнулся на пакет DSMAC...
Нужно посмотреть. Где взять?
...
Поискал в гугле - An autonomous missile guidance concept based on area correlation of sensed ground scenes is described. A conceptual description of the DSMAC system is followed ...:)))
Думаю не то...
Пример применения можно посмотреть здесь http://www.kpxx.ru/dnepr/Soft/CF/
Или здесь http://www.kpxx.ru/KBAHT4C/СОФТ/ПЗУ/134/
Спасибо. Посмотрел. Впечатляет.
Еще бы найти ДВК-2
Очевидно, у ТС она есть. Да и вопрос был про другое
Фортран-IV - двух дискетах даже МХ в 40 треков - вполне работает.
Одна системная - одна рабочая. Иногда библиотека не лезет, тогда её на рабочую дискету с правильно прописанным командным файлом
Речь шла не о компиляторе
На две дискеты MX 40 треков всё лезет, только на рабочую чтобы Макро влез - перенести библиотеку фортрановскую на рабочую дискетку...
Вопрос был про существование фортрана на ДВК-2. Ответил.
Ещё раз - речь шла не о компиляторе, а о готовой программе, написанной на фортране. Её размер будет существенно больше, причём подтягивается и то, что в программе может и не использоваться.
- - - Добавлено - - -
Собрать программу можно где угодно.
Ну дык - оптимизация. Да, места больше займёт, но если человек привык к писанию на фортране, то напишет быстрее ;)
Фортран здесь, как я понимаю, чтобы свести возню с арифметикой и цифрами к минимуму...
Про С ничего внятного сказать не могу, один раз попробовал, скомпилировал, на том мой опыт в С на PDP-11 завершился.
Единственно, что там был эмулятор FPU, коий я хотел оттуда выковырять, чтобы к примеру, Фортрану-77 приделать. Но не срослось...
Ну не было тогда у меня той документации, к которой я сейчас доступ имею :(
свести возню с арифметикой и цифрами к минимуму
В постановке задачи я не вижу возни с арифметикой или цифрами
Да, места больше займёт
Ну давай пойдём по пути IBM PC - и разгоним пустяковые программы до мегабайт?
человек привык к писанию на фортране
Что то я не вижу потенциального автора написания этого софта, а значит мысли о том - к чему он привык - гадание на КГ.
Впрочем - и ТЗ так себе написано.
- - - Добавлено - - -
Про С ничего внятного сказать не могу
Некоторые время с DECUS C ковырялся и.. Подтянет OTS меньше, но качество кода, по крайне мере в DECUS С - так себе.
Да и не нужен С на PDP-11 с его макроассемблером.
Фортран удобен с цифрами когда возня идёт первично, или если нужен доступ к файлам вторично. Всё остальное на Макро - удобнее.
Плавучка. Eщё может быть - и то только потому, что в SYSLIB процедур для проца без FIS/FPP нет. А если проц с FIS (а уж тем более с FPP) - фигня вопрос. Но. FORTRAN-IV - нет структурных операторов (даже если человек на нём писал в доисторические времена - отвыкание идёт очень быстро, а уже если человек потом занимался и занимается программированием на совремеенных языках - стены-потолок в плевках гарантируется), FORTRAN-77 - "хочу FPP"
Целые. У меня в SPEED3 идёт такое перемалывание чисел, что мелкий атас - и не было желание использовать фортран. Особенно учитывая, что используются и int*64.
Файлы. Если у него определённый формат со полями смешанных типов - ещё может быть. Но даже в этом случае - только начиная с какого-то уровня сложности формата. А учитывая отсутствие структурных операторов в FORTRAN-IV в принципе и патологическую любовь к FPP в FORTRAN-V - удобство крайне спорно.
В целом же - после того, как мне в руки попался DSMAC и особенно после его некоторого допиливания - FORTRAN мне стал не нужен (да, до этого писал программы комбинацией FORTRAN-77 + MACRO-11)
Возможный кандидат - OMSI Pascal второй версии - у него получше кодогенератор, чем у С, минимальная нагрузка OTS гораздо меньше фортрановской плюс структурные операторы.
Oleg N. Cher
29.08.2022, 14:10
А нужна именно нативная разработка? А то можно взять модифицированный GCC с бэк-эндом в PDP-11 (https://www.1801bm1.com/files/pdp11/cross-compilers/ming-w64-pdp11-aout-11.2.1.zip), он уж всяко получше OMSI Pascal'я и набортных сей.
Вопрос в том, кто к чему привык...
Если человек привык(или хотя бы когда-то занимался и может подпрограмму на Макро к фортрановской программе прицепить) к FORTRAN-IV, то проблем особых нет...
Уж очень хочется операторов - есть такая штука, как РатФор :)
FORTRAN-77 - порождает большие файлы :(
Самый минимальный FORTRAN-IV - генерация только под код THR(есть ещё под EIS и FIS, (вроде ещё есть EAE, но ни одной машины с таким зверем я не видел и даже не слышал чтобы они у кого-то были)), тогда компилятор сам по себе минимальный по размеру и библиотека тоже минимальная.
Я запускал FORTRAN-77(под RT11) с только целочисленной арифметикой, там если нет плавающей арифметики, то всё хорошо :)
Ключи на память не скажу :(
Но зачем такое чудо без плавающей арифметики? Ну разве там работа с файлами сделана чуть обширнее...
- - - Добавлено - - -
А нужна именно нативная разработка? А то можно взять модифицированный GCC с бэк-эндом в PDP-11 (https://www.1801bm1.com/files/pdp11/cross-compilers/ming-w64-pdp11-aout-11.2.1.zip), он уж всяко получше OMSI Pascal'я и набортных сей.
У меня есть некое подозрение, что будет всё работать как RSX-11 на 56 Кбайтпах.
То есть можно сгенерить и даже что-то запустить... Но вот почему-то так люди не работали, предпочитая RT-11...
И не факт, что вообще будет работать с плавающей арифметикой без FPU.
Если бы всё это работало, то мы поди увидели такие программы...
Вы лично знаете такую программу, окромя "Hello word!"?
Ну да, было тут, запустили UNIX на УКНЦ, но последователей сего я что-то не вижу...
Даже тот С с которым я столкнулся тогда - использовал эмулятор FPU.
Oleg N. Cher
29.08.2022, 14:56
Не, я не знаю никакую такую программу, окромя "Hello word!". Более того, даже для целочисленной арифметики (умножение, деление, остаток от деления) мне пришлось реализовывать свои асмовые функции.
Но вариант с GCC видится всё же самым прогрессивным. По компактности и по кодогенерации тоже. Если забить на плавучку, насчёт неё не уверен, не юзал.
Если оно так прогрессивно, то где же программы написанные таким способом?
Они ведь должны быть...
Но люди почему-то используют другие варианты. Конечно, не так много народа пишет вообще под PDP-11 но такие люди ведь есть...
А так в теории всё красиво, на мощном современном компе мы разрабатываем программу, отлаживаем в эмуляторе и переносим в реальное старое железо...
Но по факту что???
Если оно так прогрессивно
Прогрессивность (если она там, конечно, есть) не определяет - насколько востребованным будет НЕЧТО.
где же программы написанные таким способом?
Нужно программисты (которые свяжутся с этим пакетом), а их нет.
Мне он, например, не интересен - из-за языка. Не вижу я у (классического) C каких-либо преимуществ перед MACRO-11.
Oleg N. Cher
29.08.2022, 18:29
Но люди почему-то используют другие варианты.Люди стадным инстинктом страдают. "Если всё это так уж хорошо, то почему на этом нет кучи программ и игр"? ;)
Да, для PDP-11 сейчас пишут мало.
Но ведь если не исследовать этот способ, то этот способ и не будет развиваться.
Кстати, фиксы GCC для ВМ1 и ВМ2 появились не так давно.
инстинкт - инстинктом, но если бы это всё настолько удобный способ, то хотя бы один человек был бы...
Но Hunta прав, Макро сильно приятнее любого С. Ведь для меня тоже. Привычка однако и возможность сделать всё что хочется.
Если хочется побыстрее - за эмулятор + Макро. Малый объём и высокое быстродействие. Потом доотладить на реальном железе, если есть периферия.
Если надо что-то хитрое, типа загрузки в КЦГД или в периферийный процессор УКНЦ???
Я думаю, что скорее всего можно, но геморрой будет огромным...
Да и объём кода на выходе - у GCC с этим будет печалька....
Если места много, то GCC куда ни шло, а если надо каждое слово экономить?
Не, конечно , периодически пишут, что "GCC делает оптимальный код как программист на ассемблере", но это бла-бла... Так как сравнивают с криворукими товарищами.
Плюс из Макро можно обращаться к системной макробиблиотеке, в случае операционной системы, а у GCC с этим скорее всего плохо. Максимум обращения к SYSLIB, а они места более занимают.
Oleg N. Cher
30.08.2022, 22:53
если бы это всё настолько удобный способ, то хотя бы один человек был бы...Ну вот один есть - я. Могу помочь советами, если что. Вот ссылка на тему портирования игры со Спека на БК при помощи модифицированного GCC:
https://zx-pk.ru/threads/33974-esli-by-u-mednonogova-byl-bk/
7772477732
Кстати, да. Есть один чел, который разработал способ писать для БК на GNU Pascal. И ваяет на этой технологии игрушку - порт Epic с Бейсика. У него, правда, несколько странноватые подходы, как по мне. Например, он делает всё одной простынёй, избегая модулей, а также избегает асм-вставок. Там просто идея фикс "чтобы всё было на Паскале". А как по мне - хорошей асм-вставкой прогу не испортишь ;) Но кто слышал об этой технологии? Я писал вскользь. А подход вполне рабочий, и, кстати, об этом спрашивал Никита. Да, GNU Pascal, потом самопальная утилитка для конвертации в бинарник для БК. Я прилеплю несколько скринов, которые тот чел нам показывал в группе по ZXDev:
7772577726777277772877729777307773177733
Вопросов по связке GNU Pascal + БК можете мне не задавать. С тем челом контакт утерян. Но его счастье, что он не пришёл вам предлагать свой способ разработки, иначе бы его обозвали сектантом и вылили на него кучу помоев о том, что асм намного эффективнее) Это участь любого, кто что-то кому-то предлагает ;)
Да и объём кода на выходе - у GCC с этим будет печалька....С этим полюбасу будет печалька. Но ведь Вы делаете выбор не между асмом и ЯВУ, а между ЯВУ на борту и ЯВУ кросс? Здесь и говорить не о чём.
Если места много, то GCC куда ни шло, а если надо каждое слово экономить?Тогда только асм.
У меня есть некое подозрение, что GNU Pascal и GNU C похожи... То есть разница минимальна.
Но вот правда это или нет??? Ведь это мои гнусные домыслы и измышления ;) Не копенгаген я в GNU Pascal совсем...
В качестве примера "похожести" могу взять софт от мелко-мягких под ДОС, там С, Fortran, Pascal по библиотекам были почти близнецы...
Да и в зависимости от потребностей подпрограммы на одном из языков прикручивались программам на другом языке, главное было корректно указать порядок передачи аргументов и модель памяти.
С, Fortran, Pascal по библиотекам были почти близнецы...
Ну как бы смысл три раза писать почти одно и тоже? :)
У DEC в фортранах - несколько специфичный способ передачи параметров (основная проблема - рекурсия не пройдёт), но недавно мне попался документ, в котором описывается - почему так сделано. И там же, насколько мне не изменяет память - рассуждения про альтернативы - в том числе и под рекурсию. Занятное чтиво :)
О... а ссылочку, если можно для прочтения, любопытственно весьма ;)
а ссылочку, если можно для прочтения, любопытственно весьма
Вот сходу могу сказать только, что - не так давно было выложено на битсэйвер. Щас попробую вычислить...
- - - Добавлено - - -
Вот - http://www.bitsavers.org/pdf/dec/pdp11/dec_pdp11_memos/
Там всё занимательно и позновательно для прочтения, хотя tricks мне были все известны :) Ну, кроме экзотики - там IOX упоминается, но с ним я не возился..
Oleg N. Cher
31.08.2022, 17:03
У меня есть некое подозрение, что GNU Pascal и GNU C похожи...Ну как похожи. Они используют общий генератор кода, по сути всё семейство GNU использует его, там и Ada, и Modula-2, что-то ещё. Fortran, кажется.
Выбрать для разработки под PDP-11 Паскаль можно из любви к Паскалю. Я бы выбрал ;)
Уж прикалываться, так на Ада ;)
Хотя это прикол. Надо писать на том, на чём эффективнее писаться будет.
Я так подозреваю, хотя это чисто мои гнусные домыслы и измышления, человека пишущего на Ада, днём с огнём искать надо будет.
Хотя если просто программку накатать, большая часть людей здесь справится. Но это будет неродное.
Есть программа под командную строку которая была для перекодировки из iso кодов чпу на коды для перфоленточного чпу если нужна сброшу
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot