Просмотр полной версии : Вот наткнулся, может быть интересно. С для 1806ВМ3 и 1806ВМ4.
http://spectr.spb.ru/isrpo.html
Интересно, откуда они компилятор взяли??? Не GCC часом ???
https://pic.maxiol.com/thumbs2/1608538723.531453886.mtof.jpg (https://pic.maxiol.com/?v=1608538723.531453886.mtof.jpg&dp=2)
Прачечная.
Вот наткнулся, может быть интересно. С для 1806ВМ3 и 1806ВМ4.А в Сеть оно еще не утекло?
Вообще-то действительно полезная вещь. Впрочем, еще более полезной вещью окажется Визуальная Студия от Микрософта (не самая новая, если что), к которой кто-нибудь прикрутит эмулятор RT-11 от Патрона, как делают всякие Кейлы с Атмелами. Чтобы получилась Визуальная Студия PDP-11. И не надо сочинять компиляторы с линкерами, они есть в RT-11 на выбор. А вот возможность выправить текст, далее, ткнув кнопку Build, собрать проект, тыкая F10-F11 пройтись по нему отладчиком - это будет исключительно полезная вещь.
Наверное всё же будет проще GCC + Eclipse например ...
Компилятор PDP-11 в GCC вроде как есть...
Остальное приделать и вуаля ;)
Разленился народ. И подсветку синтаксиса ему и подчеркнуть ошибки и графический интерфейс и отладчик на уровне исходников..
Настоящему программисту на PDP-11 достаточно FAR-а, эмулятора Патрона, ну а если свезло и он таки знает RSX - то MIM покроет 99 его потребностей, даже FAR не нужен будет для редактирования исходников.
Кстати, во времена оные был у нас отладчик для Fortran-а на уровне исходного текста и визуальный отладчик для программ на MACRO-11. Ну понятно, для тех, кто знает RSX ;)
Разленился народ. И подсветку синтаксиса ему
Подсветка синтаксиса MACRO-11 делается в VS Code за день (это разобраться и написать, или за пару часов, если уже знаешь как), вызов компилятора через эмулятор Патрона привязать скрипт на горячую клавишу - 10 минут. Если уж Галя совсем балувана - за пару дней рожается на Питоне линтер для MACRO-11 и прикручивается туда же.
Подсветка синтаксиса MACRO-11 делается в VS Code за день
Честно говоря, я не знаю, - нафига подсветка синтаксиса в MACRO - там команд то раз два и обчёлся, но если уж на то пошло - FAR вполне прилично подсвечивает. Но язык настолько минималистический, что ошибки сажаются не в синтаксисе, а в логике. А тут что подсветка есть, что подсветки нет...
Плюс, опять же вопрос - насколько удачно эту подсветку синтаксиса получится прикрутить к тому, что есть такие вещи как - условная компиляция и макросы.
- - - Добавлено - - -
Вот пример текста
.NLIST
.INCLUDE /KXX:DSMAC.MAC/
.INCLUDE /KXX:MYMAC.MAC/
.INCLUDE /KXX:ASCII.MAC/
.INCLUDE /KXX:HWDF.MAC/
.LIST
MODULE NAME=<TESTS>, REL=<KX>, VER=<01>, LIBR=<TESTS>, COMM=<Tests for PDP-2011-DE10>, TYPE=<NOSECT>
....
PROCEDURE KWINT
BEGIN
LET TICKS := TICKS - #1
IF RESULT IS EQ THEN
LET TICKS := #LCFRQ
CALL TVWAIT
LET @#TPB := #PLUS
END
LET DCNT := DCNT - #1
IF RESULT IS EQ
LET DCNT := #^D<10>
LET DSPREG := @PTRN
LET PTRN := PTRN + #2
IF PTRN HIS #EPTRNS THEN
LET PTRN := #PTRNS
END
END
RTI
END KWINT
...
END TESTS
.END INTTST
что и как подсвечивать? :)
Честно говоря, я не знаю, - нафига подсветка синтаксиса в MACRO - там команд то раз два и обчёлся
Самый простой вариант - подсветка по ключевым словам - мнемоники команд, регистры, директивы - уже полезен (исключает опечатки). Ты со своими самобытными макросами тут в пролете конечно. Хотя и их можно вбить, при желании. Увы, нестандарт, будет исключительно твой home-brew продукт. Но все в руках утопающих - можно сделать и попродвинутей систему, тобы макросы понимала и их имена тоже подсвечивала. Но лень, я до сих пор не прикрутил даже первый вариант, но я и пишу мало. Вот буду свою ПЗУ для МС1201, тогда - может быть.
что и как подсвечивать?
я бы посоветовал оранжевого свечения (или зелёного) дисплея имитацию с возможностью инверсии всего поля для текста )))
Ты со своими самобытными макросами тут в пролете конечно
Если что, то это не самобытные макросы. Я их, конечно, малость допилил, но основа - DSMAC.MAC - из исходников RSX-11M-Plus, то есть - от DEC.
Хотя и их можно вбить, при желании
Проблема не в этом. Проблема в том, что кто то тоже может использовать макросы и тут без анализа ВСЕХ исходников (в том числе, которые включены по .INCLUDE) - не определишь, вот например это:
AAA
- что это? Вызов макроса AAA ? Или неявный .WORD AAA, где AAA - глобальный символ?
- - - Добавлено - - -
я бы посоветовал оранжевого свечения (или зелёного) дисплея имитацию
Цветной монитор на УК-НЦ :)
Если что, то это не самобытные макросы. Я их, конечно, малость допилил, но основа - DSMAC.MAC - из исходников RSX-11M-Plus, то есть - от DEC.
Точно! Я как раз раздумывал - где-то я это уже видел, в бытность работы на СМ4. На моей памяти их практически пытался применить один человек, и что-то он быстро с них слез :)
Но начального энтузиазма было много - "это практически ЯВУ! я всех вас обскачу". Но что-то не прижилось в нашей группе, а потом и застрельщик отказался:)
Проблема не в этом. Проблема в том, что кто то тоже может использовать макросы и тут без анализа ВСЕХ исходников
А ты думаешь как оно с Си или Питоном работает - именно так, смотрит все исходники и распознает где-что.
"это практически ЯВУ! я всех вас обскачу
На самом деле существенно ускоряет написание кода и самое главное - исчезает подавляющее число локальных и одноразовых ссылок - так что и понимание кода тоже упрощается. Я пробовал восстановить тексты 134-ой прошивки и КЦГД в своё время, но.. медленный редактор и самое главное - обилие меток, которые сбивают понимание - приходилось много ненужный комментов писать.
А год назад всё таки пришлось доделать дизассембл 134-ой для 1201.2018 - две недели - и почти вся логика (кроме тестов, но тесты - это отдельная песня)
Пять дней - и текст MXV-11
Что то около пяти дней - и текст KDJ11-B, достаточный, чтобы вставить свой загрузчик. Тут правда тоже осталось много не доделанного, но это уже была лень :)
А ты думаешь как оно с Си или Питоном работает
Понятия не имею - ни на С ни на Питоне не пишу :)
- - - Добавлено - - -
что-то он быстро с них слез
Вообще странно, так как простые варианты использования - примерно за пару дней :) Но вот когда я начал их допиливать под себя... Тут да, допиливание - тяжеловато :) Не всё ещё допили, что хотел :)
На самом деле существенно ускоряет написание кода и самое главное - исчезает подавляющее число локальных и одноразовых ссылок
Это все понятно. Но лично я стараюсь следовать более универсальному принципу - "Не умножай сущности сверх необходимого" (c) Оккам.
Макробиблиотека имеет право на существование, и с ней даже писали код, и вот ты ее используешь сейчас. Не вопрос, нормально. Но это - не мейнстрим :)
Понятия не имею - ни на С ни на Питоне не пишу :)
Ну оно раскрашивает функции и имена переменных нормально, даже определенные во внешних хидерах.
Но это - не мейнстрим
На это я могу сказать две вещи.
В DEC её реализовали и даже начали использовать - видел макросы оттуда в текстах RSX+ и даже в листингах тестов налетал. Вопрос - зачем они это сделали? Потому что вторая вешь:
Пишется быстрее и проще понимается. У меня не так много свободного времени и если я за тот же промежуток времени напишу больше кода (а за счёт лучшей понимаемости - насажаю меньше ошибок и меньше времени потрачу на отладку) - то по тому же принципу я не умножу количество времени, потребное на написание, а уменьше
- - - Добавлено - - -
И опять же - в стандартный MACRO-11 (опять вопрос - а зачем DECу это понадобилось? ;) ) - макросы включены :) Почему тогда их не использовать? :) Это примерно как - SOB есть не на всех PDP-11 (макросы не всеми "современными" компиляторами поддерживаются) - нахрен тогда её использовать???
На это я могу сказать две вещи.
В DEC её реализовали и даже начали использовать - видел макросы оттуда в текстах RSX+ и даже в листингах тестов налетал. Вопрос - зачем они это сделали?
Потому что там, в группе, нашелся энтузиаст вроде тебя :)
Который написал эту либу и начал использовать и продвигать. Где-то зашло, где-то нет. Я люблю сам распределить регистры, и не придумывать им имена, люблю сам контролировать где-что, мне это в кайф. И до сих пор заказываю машины с механической коробкой (хотя это дорого и трудно сегодня) :). А кто-то - берет библиотеку макросов и коробку-автомат - и не парится, ему тоже все ОК.
Основное, на самом деле - это уменьшение времени :)
- - - Добавлено - - -
Я люблю сам распределить регистры, и не придумывать им имена, люблю сам контролировать где-что, мне это в кайф
Так никто с этими макросами и не запрещает. Им вообще пофиг данный момент
Основное, на самом деле - это уменьшение времени :)
Какого времени? У тебя большая разработка на МАКРО-11?
Мне максимум драйверы контроллера для SD-карты под RT/RSX написать (возможно!) надо будет. Влазить в незнакомые макросы для этого ради мифической экономии и порерять по дороге кайф? Не, нафиг.
Какого времени? У тебя большая разработка на МАКРО-11?
У меня много своих мелких программ и планы по восстановлению исходников ПЗУ. Всё это (а особенно последнее) резко быстрее происходит с этими макросами :) Плюс некоторые планы по поддержке TCP/IP в DECNet :)
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot