214-страничный разбор того, как Commander Keen в 1990-м заставил PC скроллить как консоль

Почему медленная Nintendo обгоняла более быстрый PC по плавности скроллинга в 1990 году? Бесплатная полноцветная книга, которую автор делал три года, реконструирует ответ id Software — адаптивное тайловое обновление Кармака. Тред обсуждал другой вид клонирования.

Вкратце

Книга охватывает 80286, аппаратное обеспечение EGA, архитектуру движка и CGA-порт — с исходниками на GitHub и бесплатным PDF в высоком разрешении. Автор называет это возвращением к отладке C и ассемблера в подростковые годы.

Контекст, который добавил один читатель, и есть настоящий урок: у консолей был специализированный чип для спрайтов — бесплатно. «Более мощный» PC должен был изобретать трюки, чтобы имитировать то, что SNES делал кремнием. Несколько человек заметили, что сайт выглядит как у Фабьена Санглара.

Трюк, заставивший PC скроллить

Game Engine White Papers: Commander Keen — 214-страничная полноцветная техническая книга, бесплатная в PDF в высоком разрешении, с исходниками на GitHub — разбирает, как платформер id Software 1990 года добился плавного скроллинга на железе, для которого этот режим не был предназначен. Охваченные темы: 80286, видеосистема EGA, архитектура движка и CGA-версия. Автор описывает это как личное: «Было ощущение возвращения в ранние подростковые годы — отладка и эксперименты с C и ассемблером на MS-DOS-компьютере» — проект, который «занял у меня более трёх лет».

Обложка белой книги по Commander Keen
Обложка белой книги по Commander Keen

Легендарная сердцевина — адаптивное тайловое обновление Кармака и EGA-скроллинг: перерисовка только изменившихся фрагментов вместо полной перекраски экрана каждый кадр. Один читатель отметил: Masters of Doom рассказывает человеческую сторону того прорыва, эта книга даёт инженерию под ним.

Почему медленная консоль обгоняла более быстрый PC

Самый наглядный комментарий переосмыслил саму постановку задачи:

«Современному читателю неочевидно, почему PC со значительно более мощными вычислительными возможностями с трудом успевал за значительно более медленным железом Nintendo при рендеринге спрайтов.» — читатель об аппаратном разрыве

У консолей вроде SNES был выделенный чип для спрайтов и скроллинга. PC имел сырой CPU и фреймбуфер, с которым приходилось бороться вручную. Вклад Кармака: заставить универсальное железо программно имитировать то, что Nintendo получал бесплатно в кремнии.

Другой вид клонирования

У треда был собственный мета-спор. Несколько читателей заметили, что дизайн сайта неотличимо напоминает знаменитые чёрные книги Фабьена Санглара по движкам игр, причём один назвал это «паразитизмом на его бренде». Другие полезно расширили канон: указали на Cosmodoc — похожий разбор Cosmo's Cosmic Adventure — и на реконструированный исходный код Commander Keen. Один скептик вслух задался вопросом: не сделали ли LLM «всю тайнознание об игровой инженерии бессмысленным».

Сохранение как ремесло

Эта книга — противоположность сегодняшних AI-slop-сабмитов: три года одного человека, реконструирующего, как именно ограничение было преодолено, написанные для людей, которые никогда не будут шипить под 80286. Её ценность именно в том, что она медленная, конкретная и ручная. LLM-вопрос в треде сам себя отвечает: модель может изложить адаптивное тайловое обновление, но она не могла провести три года, заботясь о нём.

Получайте такие разборы каждый день

Главные истории Hacker News — на email, в Telegram или RSS.

Следующая новость · 22 из 22 Читать дальше
💬Ask HN

Ask HN: кто-нибудь правда заменил Claude/GPT локальной моделью для ежедневного кодинга?

338 комментариев, и честный ответ в основном — «пока нет». Повторяющееся раздражение: за каждым «отлично работает!» нет цифр, по которым это можно повторить — квантизации, размера контекста, VRAM, реальной конфигурации.

★ 694 · 💬 338 · news.ycombinator.com · 3 мин