Значок ресурса

Программируя невозможное

Нет прав на скачивание
Автор
Alice Vinogradova
🚀 О чем эта книга?

Это не просто книга о программировании на ассемблере Z80. Это — машина времени в золотую эру демосцены и путеводитель по самым изощренным техникам, которые заставляли скромный ZX Spectrum творить чудеса. Если вы когда-либо задавались вопросом: «Как они умудрились сделать вращающуюся 3D-сферу на процессоре 3.5 МГц?» или «Как работает этот безумный ротозумер?» — эта книга даст вам исчерпывающие ответы.

«Программируя невозможное» — это практическое руководство по написанию кода, который выжимает 100% производительности из легендарного 8-битного компьютера. Вы узнаете, как мыслить не байтами, а тактами (T-states) , как превращать экранные атрибуты в художественное полотно и как уместить целое демо в 256 байт.

📚 Для кого эта книга?
  • Для энтузиастов ретрокомпьютинга, желающих писать свои демо и игры.
  • Для программистов, которым интересна ультровая оптимизация и low-level программирование.
  • Для всех, кто хочет понять, как работают легендарные эффекты из демо Eager, NHBF, Illusion, Lo-Fi Motion и других.
  • Для пользователей современных платформ, таких как Agon Light 2 и ZX Spectrum Next, которые хотят использовать их мощь на полную катушку.

Что вы найдете внутри: Ключевые темы

Книга разбита на логические блоки, ведущие вас от основ к вершинам мастерства.

🕹️ Фундамент (Главы 1-4)
  • Мыслить тактами: Почему время — это главная валюта на Z80. Устройство кадра, различия между оригинальным Spectrum и клоном Pentagon. Настройка современной среды разработки (ассемблер, эмулятор, дебаггер).
  • Экран как головоломка: Разбираем по косточкам структуру экранной памяти. Раскладка пикселей и атрибутов, «чересстрочность», конфликт атрибутов. Научитесь молниеносно вычислять адреса и навигировать по экрану.
  • Инструментарий демосценера: Главные трюки: самомодифицирующийся код (SMC) , запись через стек (PUSH), цепи LDI, генерация кода на лету и диспетчеризация через RET.
  • Математика, которая реально нужна: Умножение и деление за разумное время, параболические синусы, арифметика с фиксированной точкой 8.8, быстрые случайные числа (регистр R, алгоритм из Elite).
✨ Легендарные эффекты (Главы 5-10)
  • 3D на 3.5 МГц: Как строить и вращать 3D-объекты без миллиона умножений. Метод средней точки Dark’а, создание «виртуального процессора», отсечение граней и закраска полигонов.
  • Сфера — Текстурный маппинг: Культовый эффект! Разбор техники, где код пишет код для рендеринга текстурированной сферы. Дебаты о внутренних циклах vs математика.
  • Ротозумер и чанки-пиксели: Техника создания иллюзии высокого разрешения и плавного движения за счет группировки пикселей в "чанки". Внутренности движка из демо Illusion.
  • Мультиколор: Как обмануть ULA и получить разные цвета в каждой пиксельной строке. Техники LDPUSH, движок GLUF, двухкадровая архитектура.
  • Атрибутные туннели и хаос-зумеры: Использование атрибутной сетки как полноценного фреймбуфера. Генерация плазмы, четвертная симметрия и создание скриптовых движков.
🎵 Звук и Синхронизация (Главы 11-12)
  • Звуковая архитектура: Полный гайд по чипу AY-3-8910, карта регистров, режимы работы. Чиптюн-техники: арпеджио, buzz-bass, синтез ударных. Поддержка TurboSound (2xAY) и Triple AY (ZX Next).
  • Цифровые барабаны и синхронизация: Как заставить AY воспроизводить подобие сэмплов. Асинхронная генерация кадров, скриптовые движки для синхронизации эффектов с музыкой. Инновационные методы синхронизации с помощью видеоредакторов.
⚙️ Инженерия и Портирование (Главы 13-23)
  • Мастерство sizecoding: Искусство умещать крутые эффекты в 256 и 512 байт. Разбор анатомии интро NHBF, трюк LPRINT и работа с перекрытием кода и данных.
  • Сжатие: Обзор лучших упаковщиков для Z80 (ZX0, MegaLZ, RLE). Треугольник компромиссов: скорость/память/степень сжатия.
  • Анатомия машин: Глубокое погружение в железо: карта памяти ZX Spectrum 128K, порт $7FFD, спорная память, тайминг ULA, различия клонов. Отдельный большой раздел по Agon Light 2 (eZ80, VDP, MOS API).
  • Быстрые спрайты и скроллинг: Обзор 6 методов вывода спрайтов (от XOR до скомпилированных и стековых) и 4 методов скроллинга. Расчет бюджетов и анализ производительности.
  • Игровой цикл и системы: Создание каркаса игры: конечные автоматы, массивы сущностей, физика (гравитация, прыжки), AABB-столкновения и ИИ врагов (патруль, атака, смерть).
  • Рабочий процесс демо: От идеи до релиза на компо-party. Разбор создания демо Lo-Fi Motion, культура making-of, работа с соавторами, отладка с DeZog.
  • Портирование на Agon Light 2: Что переносится 1-в-1, а что нужно переписывать с нуля. Режимы ADL, замена фреймбуфера на VDP-команды.
  • Z80-разработка с помощью ИИ: Реалистичный взгляд на использование современных LLM (Claude, Copilot) для написания ассемблерного кода. Когда ИИ помогает, а когда — вредит. Разбор создания демо Antique Toy и процессора MinZ.
📚 Справочные материалы (Приложения)

Книга содержит исчерпывающий справочный аппарат:
  • Краткий справочник инструкций Z80 с указанием тактов и размеров.
  • Справочник по генерации тригонометрических таблиц (от полной до аппроксимации Бхаскары I).
  • Подробная карта регистров AY-3-8910 с таблицами частот.
  • Сравнительная таблица алгоритмов сжатия и дерево решений по их выбору.

Почему вам стоит прочитать эту книгу?

  • Уникальная концентрация опыта: В одной книге собраны техники, разбросанные по форумам (Hype, WoS), исходникам легендарных демо и личным заметкам сценеров.
  • От теории к практике: Каждая техника сопровождается кодом, расчетами тактов и практическими примерами.
  • Современный подход: Книга ориентирована на разработку в 2020-х с использованием современных тулов (sjasmplus, VS Code, DeZog) как для классических спектрумов, так и для новейших машин (Agon Light, ZX Next).
  • Вдохновение: Поняв, как работают эти «невозможные» эффекты, вы сможете создавать свои собственные чудеса.
🕹️ Готовы программировать невозможное? Откройте книгу и начните свое путешествие в мир, где каждый такт на счету.
  • Like
Реакции: Dizzy
Автор
admin
Загрузки
10
Просмотры
84
Расширение
pdf
Размер
4 МБ
Хэш
9bbbc682666d6fa54bddac2781d324aa
Первый выпуск
Последнее обновление

Оценки

2.00 звезд(ы) 1 оценок

Последние отзывы

Много места посвящено Next, который не представляет никакого интереса для русской аудитории из-за отсутствия в прямом доступе и не несёт в себе ничего оригинального. При этом 0 информации про общедоступные ZX Evolution, ATM и Sprinter, производимые в России. Есть абсолютно ложные утверждения. Для примера, на стр. 203 сказано что "Scorpion ZS-256 – украинский клон с 256 КБ ОЗУ". На деле это российский компьютер разработанный Сергеем Зоновым из Санкт-Петербурга. Налицо политизированное переписывание истории. Книга по существу посвящена восхвалению сценера с ником introspec, он упоминается в тексте 176 раз! Без понятия кто это, но вероятно он очень себя любит и как-то связан с автором данного опуса.
Назад
Вверх