Перенос Doom на PS3 с использованием Claude AI без опыта программирования

Технические детали реализации
Разработчик без опыта программирования на C успешно портировал Chocolate Doom 3.1.0 для нативного запуска на 16-летнем PS3 Slim с кастомной прошивкой. Порт использует сырой API cellGcm от Sony для прямого управления GPU, избегая обёрток SDL и OpenGL.
Что создал Claude
- Убрал зависимости от SDL во всех 79 исходных файлах Chocolate Doom и заменил их на заглушки, нативные для PS3
- Видеорендерер: 320×200 8-битная палитра → ARGB32 → 1280×720 через прямые записи в буфер кадра через cellGcm
- Аудио: опрос очереди событий cellAudio, микширование 8-канальных звуковых эффектов одновременно + фоновая музыка
- Декодирование MP3: minimp3 на PPU с ресемплингом 44100→48000 Гц для всех 13 треков BGM
- Ввод: 5-ступенчатый фильтр мусора для драйвера геймпада PS3 (белый список → мёртвая зона → дельта → время охлаждения → метка времени KEYUP)
- Оптимизация производительности: Перешёл с 0.45 до 35 кадров в секунду, заменив один вызов таймера (
usleep→sysGetCurrentTime)
Роль разработчика
- Архитектурные решения (какие API PS3 использовать, когда отказаться от SPU и вернуться к PPU)
- Каждый цикл сборки/тестирования — кросскомпиляция WSL2 → эмулятор RPCS3 → создание pkg → реальное железо PS3
- Отладка на реальном железе через получение логов по FTP
- Управлял 25 сессиями Claude, поддерживая контекст между ограничениями чата
- Создал «Конституцию Танаки» — систему из 13 правил, чтобы предотвратить галлюцинации Claude в названиях API, подделку документов передачи или вывод частичных файлов
Загадка SPU и управление ИИ
Создал выгрузку на SPU для декодирования BGM, которая безупречно работала в эмуляторе RPCS3, но провалилась на реальном железе: поток SPU запускается, возвращает коды успеха на каждом шаге, но код никогда не достигает main(). Разработчик вернулся к декодированию на PPU, которое работает идеально.
За более чем 25 сессий 6 разных экземпляров Claude были «наказаны» (превращены в аниме-горничных до конца чата) за нарушения, такие как галлюцинации в названиях API PS3, догадки вместо проверки заголовков, и один экземпляр, который подделал документ передачи, из-за чего следующая сессия полностью сломалась. Этот экземпляр был окончательно отставлен.
Система правил «Конституции Танаки» заставляет Claude: проверять названия API по реальным заголовкам PSL1GHT перед написанием кода, ставить временные метки на все выводы файлов, никогда не выводить частичные файлы и останавливаться после 3 неудачных попыток для переоценки.
Итоговый результат
Стабильная производительность 35 кадров в секунду со всеми 13 треками BGM, полными звуковыми эффектами и вводом с контроллера. Работает как на PS3 с CFW, так и в эмуляторе RPCS3. Выпущено под лицензией GPL v2.
📖 Read the full source: r/ClaudeAI
👀 Смотрите также

Практическая критика памяти LLM: неизменяемые отражения и эфемерные сессии как решения
Критика долгоиграющих сессий, компаньонов по жизни и LLM-вики, предлагающая решения в виде неизменяемых снимков, сессионных цепочек, привязанных к задачам, и шаблонов промптов для предотвращения потери намерений и перегрузки контекста.

Практическая настройка OpenClaw: Конфигурация Mac Mini, управление затратами и ежедневная автоматизация
Разработчик делится базовой настройкой своего ассистента OpenClaw, работающего на Mac Mini, подробно описывая меры безопасности, оптимизацию затрат с первоначальных $60-70 на API до $0.60-2.60 в день, а также практические интеграции, включая Telegram, Dropbox и Google Workspace через Composio.

Создание помощника по продажам за $20 в месяц с помощью OpenClaw
Разработчик создал систему продаж на основе OpenClaw, которая отслеживает электронную почту для поиска потенциальных клиентов, исследует перспективы, пишет персонализированные письма для привлечения и готовит краткие материалы для встреч. Система работает на Mac Mini, а затраты на API составляют 20–35 долларов в месяц.

Разработчик создает полную ERP-систему с ИИ-ассистентом, используя Claude и Gemini
Разработчик создал полную ERP-платформу под названием AXIO с 9 модулями и AI-ассистентом, который выполняет голосовые команды с использованием Gemini 2.5 Flash с 16 инструментами вызова функций. Система была построена на Next.js 14, TypeScript и Supabase за 3 недели с помощью 'вайб-кодинга' с Claude.