http://lmgtfy.com/?q=pl%2Fm80+manual
http://www.autometer.de/unix4fun/z80...c_cpm_plm.html
http://www.computer-museum.ru/histsoft/plm.htm
Вид для печати
Я не соглашусь с этими тезисами barsik'а. Но по порядку.
Ядро Forth-программы на 10 кб - это особенности конкретной реализации Форта. Мне попадались реализации, которые включали в целевой код только используемые слова (по-моему, Черезов писал специальный оптимизатор для Форта), и код был сотни байт. Разумеется, для 8-биток имеют смысл только реализации, основанные не на прямом или косвенном шитом коде, а на подпрограммном. Была такая одна реализация, с которой я работал на своём первом компе - HL ZX Forth. Так что всё дело в том, что нужно делать свою новую реализацию, благо, это сравнительно несложно. Но меня Форт-языки не очень интересуют. Там огромная разнопёстрость, а низкий уровень всё равно прёт из всех щелей, думать при написании кода приходится о вещах, не относящихся к предметной области и т.д.
О том, что PL/1 даёт более компактный и быстрый код, чем Паскаль или Си - это смешное утверждение. Опять же, говорим о конкретных реализациях. Ведь: чем принципиально PL/1'ное "a+b" отличается от такого же "a+b" на Си?
PL/M - да. Хотя написанная на нём программа лучше подлежит ручной оптимизации, чем на PL/1. Всё-таки PL/M более низкоуровнев. И более подходящ для 8-биток.
Я успешно использую Оберон для разработки под Z80, хорошо получается. Си тоже весьма хорош, хотя конечно он - не асм. PL/M видится где-то между. Т.е. было бы интересно покодить на PL/M для Z80, но только для чего-то небольшого. Для проектов побольше я всё равно взял бы Оберон + асм.
Подсветку синтаксиса (если есть вся исчерпывающая по нему инфа не размазанная по сотням страниц) прикрутить к любому редактору (коих тма) несложно, заставить этот редактор вызывать по горячей клавише компилер (если он есть) тоже не проблема.
Цитата:
Язык ПЛ/М – это семейство машинно-ориентированных языков (ПЛ/М-80, ПЛ/М-86, ПЛ/М-286, ПЛ/М-386, ПЛ/М-51 и ПЛ/М-96) высокого уровня для программирования однокристальных ЭВМ, микропроцессорных контроллеров и систем. Цифры в названиях языков указывают на базовый тип поддерживаемого микропроцессора. Как правило, существует несколько реализаций каждого из перечисленных языков, включая кроссовый вариант. Языки семейства ПЛ/М имеют блочную структуру, строго типизированные данные и внешний набор библиотек ввода-вывода. При всеобщем увлечении языком Си следует отметить, что ПЛ/М проще, надежней, читабельней, лучше учитывает специфику программирования перечисленных выше систем и архитектурные особенности микропроцессоров, для которых он реализован.
- Про компилятор PLMX, где его можно и скачать. Я скачал. Кто-нить ковырялся с с этим чудом?
сайтик таки рухнул похоже
файлы тут:
https://yadi.sk/d/mvUlKsHt3CupYG
docs.zip - описание использования Intel'овского компилятора.
простая программа:
далее - runcpm plmx hullo.plmКод:MY:
DO;
DECLARE
ENDFILE LITERALLY '1AH', /* END OF FILE MARK */
JMP LITERALLY '0C3H', /* 8080 JUMP INSTRUCTION */
RET LITERALLY '0C9H'; /* 8080 RETURN */
MON1: PROCEDURE(F,A) EXTERNAL;
DECLARE F BYTE,
A ADDRESS;
END MON1;
PRINTCHAR: PROCEDURE(CHAR);
DECLARE CHAR BYTE;
CALL MON1(2,CHAR AND 7FH);
END PRINTCHAR;
CRLF: PROCEDURE;
CALL PRINTCHAR(13);
CALL PRINTCHAR(10);
END CRLF;
PRINT: PROCEDURE(A);
DECLARE A ADDRESS;
/* PRINT THE STRING STARTING AT ADDRESS A UNTIL THE
NEXT DOLLAR SIGN IS ENCOUNTERED */
CALL CRLF;
CALL MON1(9,A);
END PRINT;
CALL PRINT(.('HUllo$'));
END MY;
А что за эмулятор runcpm? Тот, что использую я, называется cpm.exe (для Win32), есть ещё 22nice (для DOS).
да, программа cpm.exe, проект тут:
https://sourceforge.net/projects/runcpm/
22nice не использовал, мне больше понравился z80emu. С дисками придется повозиться, но для экспериментов годно.
Посмотрел исходники компилятора PL/M на FORTRAN'е. Мда. Легче застрелиться, чем разобраться в них. Всё-таки Фортран смотрится очень архаично, даже компилятор на самом PL/M был бы намного понятнее. В PL/M есть архаичные моменты, но они не столь существенны. Оберон, тоже старый язык, вообще выглядит на их фоне свежо и бодро.
Шынни, у Вас есть мысль написать что-то определённое на PL/M или так просто ковыряете? На правах интереса к раритету.
может быть. Сейчас есть другие задачи и проекты. Найдется время и появится желание - можно будет заняться.
Эти ?
Угу.