Тогда да, лучше оставить. Если время на их разработку уже не нужно. Единственное, из-за них могут быть универсальные излишества в генерируемом коде для целочисленных типов, надо смотреть.
Ну если там нет действительных типов, то не так сложно. Скорректировать только координаты вывода на экран. Я вот здесь для примера посмотрел исходники, реально: http://pascal.proweb.kz/index.php?page=127
Выкладываю текущий свой проект Паскаля, библиотека процедур там в файле libasm.lib - это обычный текстовый файл с процедурами на асме. Некоторые надёргал из разных источников, некоторые сам написал. До спрайтов пока не дошел. Можешь себе брать.
А еще можешь поюзать сам Паскаль. Уже поддерживаются:
- переменные типов byte и word;
- одномерные и двумерные массивы типа ArrayWord[i,j];
- операторы: begin-end, :=, write(ln), if-then, for-to, while, repeat-until, pause, clrscr, gotoxy;
- математические и логические выражения; арифметические знаки + - * / % (целочисленные); скобки и приоритет операций поддерживаются;
- процедуры без параметров;
- нестандартные операторы: color(attr) - установка байта атрибутов; window(x,y,width,height) - установка и очистка окна в знакоместах.
- шрифт используется пока только 4х8 (64 символа в строке).
Оптимизации кода пока нет. Но буду делать по навету ZEKа - оптимизировать сгенерированный код - распознавать шаблонные комбинации команд и заменять оптимальными.
Планируется куча встроенных команд вывода спрайтов, вывода и обработки карт/лабиринтов, скроллингов и отражений окон. Часть процедур уже написана за предыдущие игры. Сейчас я занят поддержкой символьных переменных и массивов (помимо игры на конкурс "Твоя игра", но ей уже почти конец).





Ответить с цитированием
