Skip to content

v0.0.5

Choose a tag to compare

@malexple malexple released this 10 Aug 22:45
· 3 commits to master since this release

Установка Zig НЕ требуется — это готовый исполняемый файл для Windows.

КАК ЗАПУСТИТЬ:

Откройте командную строку (cmd.exe) в этой папке
(можно: зажать Shift, ПКМ на пустом месте в папке в проводнике,
выбрать "Открыть окно PowerShell здесь" или "Открыть в терминале").

Поправлены проблыме с отображением кирилицы не нужно больше набирать chcp 65001 в консоли

Запустите любой пример:
ellochka.exe examples\hello.ell
ellochka.exe examples\sample.ela

ВАЖНО:

Интерактивные вещи (MENU, WAIT, стрелки, цвет) надёжно работают
именно в обычном cmd.exe/PowerShell/Windows Terminal, а не во
встроенных консолях сред разработки.
Операторы графики (GRAF и далее) открывают ОТДЕЛЬНОЕ окно поверх
консоли - это два разных окна, текст всегда идёт в консоль.
Раздел "разное" в sample.ela умеет писать временный файл на диск,
заполняя его до конца свободного места (демонстрация оператора
FREE/PUTF) - будьте внимательны при вводе буквы диска.
Описание языка (оригинал автора):
https://erichware.com/inform/ellochka.htm

Основные изменения:

  1. Парсер и строки. Добавлена корректная обработка консольного VVOD
  2. Совместимость с кодировкой DOS (CP866) восстанавливает псевдографику и рамки (, , и т.п.)
  3. Графический режим и GRAF научен сохранять исходные строки без срезания начальных пробелов
  4. Меню и ввод клавиш. Консольный VVOD теперь выводит приглашения без лишних переносов строк
  5. Sea battle / Морской бой. Игра «Морской бой» переработана: флот обоих игроков расставляется случайно по правилам (корабли не соприкасаются, включая диагонали), логика попаданий и обводки потопленных кораблей сохранена.
  6. Консоль Windows. При старте интерпретатора консоль Windows принудительно переключается на размер 80×30
  7. Прочие мелкие исправлени. strip для exe выключен в debug‑сборке, чтобы сохранялась отладочная информация.
  8. В нескольких местах (например, readSegment) корректно игнорируются возможные ошибки stdout.flush() вместо расширения error‑set.

Исходный код и подробности реализации:
см. README.md в репозитории проекта.