kray_zemli (kray_zemli) wrote,
kray_zemli
kray_zemli

Хочу признаться общественности в страшном грехе

Я занимался русификацией игрушек для 16-битной сеги!



Короче, сега — это такая весьма известная в своё время игровая приставка на двух процессорах. В ней стоял 68000 на частоте где-то 7.6 МГц и Z80 на частоте где-то 3.7 МГц. Ну и, как полагается приставкам, всякие FM-синтезаторы и тайловые видеоконтроллеры. 64 КБ ОЗУ для основного проца, 64 КБ ВидеоОЗУ, 8 КБ ОЗУ для Z80 (которая, как правило, занималась синтезом звука), и до 4 МБ ПЗУ картриджа.

Итак, в годах эдак 96-99 я зачем-то занялся русификацией игрушек. Сначала, был найден у кого-то программатор и считан картридж Captain America (единственный, который у меня был в тот момент, так как моя приставка сломалась, и картриджи я пораздавал друзьям). Было написано много софта в стиле "на коленке" для перевода игры на русский язык.



Однако, из-за лени, и из-за того, что тогда не было ещё эмуляторов, а компьютеры были слабые (у меня был 486), закончено это тогда так и не было, хотя сделано больше половины.

Потом, году так в 98-м, когда у меня уже стоял P2-266, начали потихоньку появляться эмуляторы. Сперва они были жутко глючные (genem, genecyst), потом они немного стали улучшаться, например, неплохо работал KGEN98. Кстати, я тогда писал свой собственный эмулятор, но, как только нашёл готовый, — бросил. Правда, мне до сих пор интересно, с какой скоростью работал бы мой код эмуляции 68000 (а он написан почти до конца), основанный на 3 МБ таблице переходов. ;)

Короче, после появления эмуляторов, я опять взялся за это. Сначала, я долго-долго издевался над игрушкой Scooby Doo (единственный квест, что я видел на сеге). Для этого было сконструировано устройство чтения картриджей. Там было около 6 микросхем 1533ИЕ5, и ещё всякая рассыпуха. Естественно, работала через LPT порт. Скорость чтения была где-то 150 КБ в секунду. Но, почему-то, глючило - иногда терялись импульсы инкрементирования счётчиков. К сожалению, не помню, куда я это произведение задевал, на вид штука устрашающая.

Так вот, прочитал код. Долго-долго мучил его дизассемблерами, разбирался в деталях внутренней виртуальной машины (почти все квесты, почему-то, делаются с какой-нибудь виртуальной машиной в составе) В итоге, получилось очень неплохо. Народец, которому я это показывал, ссали кипятком.



В код игры взамен старых LZ и RLE были встроены разработанные мной спец. компрессоры, в результате чего в 2 МБ картридже освободилось эдак 500 К.

Тогда, я поставил весьма амбициозную задачу: сделать на сеге воспроизведение видео в реальном времени. Так появилась фиговина SMPEG:



Разрешение 224x168, 16 кадров в секунду, дизеринг из 16 цветов.

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

Из-за медленного сжатия, особо много я не экспериментировал (итого, за всё время экспериментов было сжато около 5 минут видео), в том числе и с потоком. В экспериментах использовался поток из расчёта 1 МБ — 10 секунд.

Для проверки всего этого на реальной системе, пришлось изобретать программируемый картридж:





Итак, игрушка Scooby Doo на русском с встроенным видео в качестве короткого деморолика, идущего в составе известного тогда MPEG-плеера Xing, была записана на картридж.

Местные фанаты от демонстрации русского языка и тем более цветного видеопотока со звуком, хоть и очень короткого, вообще охуевали!

Теоретически, можно было заказать картриджей на русском, вбить туда несколько секунд проплаченной видеорекламы, заказать китайцам, и продавать. Но минимальная партия для Mask-ROM была 5000 штук, и около 3 или 4 баксов на микросхему, что было и так неподъёмно по финансам, да ещё и очень рискованно — просили местную компанию Неоком (занимающуюся всякой хернёй, где пахнет баблом) войти в долю — они побоялись.

Остальные игры были русифицированы, скорее, по-приколу:

Flashback (почти доведена до конца, кроме заставки и титров в конце):



Theme park (переведена, но пока коряво):



а также:

Shadow Run — написана программа - база данных для огромного массива текста с кучей перекрёстных ссылок, но до конца текст ещё не переведён.

Shining Force 2 — вытащен текст (он там в коде был пожат хафманом), его оказалось около 300 КБ, я столько не осилил, бросил.

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

  • Другие 90-е

    Ванюков был одним из трех человек, державших Петроплаховск. (Воображение так и рисует трех мускулистых атлантов, держащих на плечах ломоть земли,…

  • (no subject)

    Либералы — за свободу. Ты — против либералов. Следовательно, ты против свободы? Вор должен сидеть в тюрьме.

  • Расовое профилирование, ответ либеральному шулеру

    Всё правильно: видишь кавказскую наружность — прояви повышенную бдительность и осмотрительность. Кто этого не делает, тех забивают в метро…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 12 comments

  • Другие 90-е

    Ванюков был одним из трех человек, державших Петроплаховск. (Воображение так и рисует трех мускулистых атлантов, держащих на плечах ломоть земли,…

  • (no subject)

    Либералы — за свободу. Ты — против либералов. Следовательно, ты против свободы? Вор должен сидеть в тюрьме.

  • Расовое профилирование, ответ либеральному шулеру

    Всё правильно: видишь кавказскую наружность — прояви повышенную бдительность и осмотрительность. Кто этого не делает, тех забивают в метро…