Представляю свой готовый кросс-компилятор Паскаля для Спектрума (и это не первоапрельская шутка! ).
ZX Like Pascal – кросс-компилятор языка программирования Паскаль для компьютера ZX Spectrum. Имеет усеченную версию по сравнению с классическим Паскалем.
Исходная программа на Паскале создается в файле с расширением PRG в любом текстовом редакторе. Для компиляции необходимо запустить файл ZXLIKEPASCAL.EXE и выбрать необходимый файл PRG. Программа на Паскале скомпилируется в программу на Ассемблере и запишется в текстовый файл с тем же именем и расширением ASM. Ассемблерный файл можно далее скомпилировать в любом кросс-ассемблере для ZX Spectrum. В случае обнаружения синтаксической ошибки в исходной программе выводится сообщение на экран с описанием ошибки, конкретное местонахождение ошибки можно посмотреть в файле ERROR.PRG.
Поддерживаются только целочисленные и строковые типы, одномерные и двумерные массивы.
Символьный экран - 64х24. Шрифт используется 4х8, в строке 64 символа. Поддерживается латиница и кириллица, буквы только прописные.
Имеются встроенные операторы вывода окон, познакоместных спрайтов и двумерных карт из элементов-спрайтов. Карты могут представлять из себя ландшафты, лабиринты, игровые поля. Имеется также встроенный оператор поиска элементов на карте по различным критериям. Карта задается в двумерном массиве, байт на клетку. В программе может быть несколько карт, соответствующие нескольким массивам.
Флагами компиляции можно задать:
- использование атрибутов (да/нет);
- отслеживание границ спрайтов и вывод только помещающейся части спрайтов (да/нет);
- вывод на виртуальный экран (да/нет).
Выход за пределы допустимых значений переменных и массивов не отслеживается, за ними должен следить программист (это сделано для увеличения быстродействия программ).
После последнего END программы на Паскале в файле PRG могут записываться процедуры на Ассемблере, коды спрайтов, карт и другая информация. Она без изменения копируется в файл ASM.
Обновил 20.05.2020 версию до 1.0.
Также добавлен Генератор спрайтов ZxSprGen V.2.0.1 от AzAtom, специально написанный для ZX Like Pascal.