Аськи у меня нет, только М-агент. Я только в рабочее время доступен, т.к. дома невозможно ничего делать сейчас (семья не дает)Так что, можно в этой теме всё писать.
Я свой Паскаль делаю не с нуля, а в Coco/R (спасибо ZEKу за наводку), потом компилирую в TurboPascal. Только файл atg вручную пишу. Выкладываю его, см.файл.
Моё вИдение:
Нужен или Паскаль, или Оберон, подогнанный под возможности Спектрума. Цель его создания, не удивить или переплюнуть кого-либо, а как быстрое средство разработки игр и программ (в первую очередь, игр, т.к. новый софт для Спека всё же лучше писать на Асме). Также как удобное средство разработки для тех, кто не знает или не хочет использовать Ассемблер, но хочет писать продвинутые игры.
Лучше делать кросс-компилятор с PC на Спектрум. На PC очень удобно писать в текстовых файлах и нет ограничений по памяти. Компилировать в Ассемблер в текстовый файл на PC, а не в бинарник. Чтобы пользователь мог выбрать потом любой кросс-ассемблер для Спектрума.
На первом этапе:
-----------------
Используемые типы данных:
byte
word
longint
char
string[n]
sprite - спрайтовый тип, на первом этапе только познакоместный цветной. Формат спрайтов продумать.
Массивы: одномерные и двумерные для всех типов. Размерность только до 256. Для двумерных массивов размерность первого индекса может быть только 4,8,16,32,64,128 или 256, это нужно для быстрого расчета адреса элемента массива (в ассемблере массивы всегда стараются делать с такими размерностями).
Записей нет.
Функции: +, -, *, div, mod, random(x), code, chr, readkey.
Арифметические выражения без скобок.
Операторы:
:=
write
writeln
read
readln
if ... then ... else ...
case ... of
for ... to (downto) ... do
while ... do
repeat ... until
inc
dec
clrscr
gotoxy
Специфические операторы:
colorstyle(ink,paper,bright,flash,over, inverse) - установка стиля
putsprite(?) - вывод спрайта
Процедуры: без параметров и локальных переменных
Шрифт: только 4х8 рус. и англ.





Так что, можно в этой теме всё писать.
Ответить с цитированием