Цитата Сообщение от alone Посмотреть сообщение
1. Код плотнее, чем на Z80.
2. Перемещаемость (помогло бы для ОС с одним окном памяти, где код лежит внизу).
3. Реентерабельность (опять-таки для ОС).
4. Возможность использования ассемблерных вставок с ограничениями.
1. Смотря что понимать под плотностью кода: если ты про агрегатные функции типа печать строки/символа, то это ЯВУ или хотя бы уровень Си.
Требование непонятное, скорее всего тут логичнее, как уже советовали, какое-нибудь LZ*. Все биосы (ПО) современных компов сжимаются таким методом.
2. Перемещаемость на этапе загрузки реализована витамином. Смотрим вот и вот. Перемещаемость после загрузки - слишком дорого в тактах процессора.
3. Это сложно. Современные программисты для ZX так не умеют. Они либо экстремально кодят, с самомодифируемым кодом, либо вообще не умеют писать адекватный код. Реализуемо, использовать стек как способ работы и требовать обязательно сохранение данных в некий аналог кучи (heap). Это требование замедляет результирующий код.
4. Таки ты хочешь некое ЯВУ?