gw-batsic: интерпретатор GW-BASIC на голом batch — восемь лет в свободное время

Полноценный интерпретатор GW-BASIC, написанный целиком на .bat-файлах Windows. Без C, без Python, без единого скомпилированного бинарника — только SET, CALL, GOTO и FOR /F.

Read More

x11.js: X11-сервер в браузере, на котором работают настоящие Linux-приложения

Вкладка браузера, которая притворяется X11-сервером: настоящий рабочий стол Linux, игры из GNOME и даже Firefox рисуются на <canvas> — а сами приложения живут в Docker и не подозревают, что говорят с браузером.

Живой демки в этот раз нет: в отличие от прошлых проектов, одной вкладкой не обойтись — приложениям нужен настоящий Linux в Docker. Поэтому — видео.

Read More

winweb: Win32 в браузере, где C-приложения компилируются по-настоящему

Рабочий стол в духе Win9x, на котором живут настоящие Win32-приложения на C — и компилируются прямо во вкладке браузера, без сервера и без Emscripten.

  • Демо — рабочий стол с Сапёром, Блокнотом, командной строкой и компилятором; всё на настоящем Win32 C, скомпилированном в WebAssembly
  • Репозиторий

Read More

lcc-wasm: компилятор C, который компилирует сам себя в WebAssembly

Как я научил маленький компилятор C выдавать WebAssembly — а потом скомпилировал им самого себя, чтобы C компилировался прямо в браузере.

  • Демо — компилятор C в веб-странице: пишете код, жмёте кнопку, он тут же компилируется и запускается
  • Репозиторий

Read More

Battle City по видеозвонку: пишем игру внутри FreeSWITCH

Лет десять назад написал модуль для FreeSWITCH, который превращает обычный видеозвонок в мультиплеерную игру Battle City. Звонишь на номер 9999, видишь игровое поле, управляешь танком через цифровую клавиатуру телефона. Несколько игроков звонят — несколько танков на поле.

Проект пролежал на полке. Недавно решил его откопать, разобраться заново и довести до рабочего состояния.

Read More

ПакМен: портирую игру из детства на JavaScript

В детстве на ПК МК-88 с ОС Альфа-дос была пятидюймовая дискета с играми. Одна из игр — ПакМен, сделанный, судя по стартовому экрану, где-то в Киеве в 1990 году. Не оригинальный Pac-Man, а некий советский клон - с «кровавыми жуками» вместо призраков и своим характером. Решил её портировать в браузер.

Read More