[Stop] Настройка эмуляторов игровых приставок (на личном примере)

  • nessness 19.05.2015
    Для интересующихся темой'). Хочу привести примеры настроек эмуляторов игровых приставок, краткие описания которых добавил в раздел сайта «Игры». Ниже я расскажу о своих конфигурациях для каждой из программ. Пожалуйста, прочтите очень внимательно. Это необходимо хотя бы потому, что никто, кроме вас, за вас ничего понимать и настраивать не будет, а просто запустить и играть - не получится'). Хочу заметить, что кроме специально упомянутых, другими настройками можно пренебречь, по крайней мере, пока вы сами не захотите разобраться, для чего они. Так же предупреждаю, что использую свободные драйверы, а все эмуляторы запускаю в окне, мне так удобнее. Перед запуском программы, не забудьте подключить джойстик, иначе она его просто не увидит.

    Конечно же, работать будут не все игры, и дело тут совершенно не в настройках. Несовместимость с конкретной игрой, плохое снятие образа, ручное изменение, да мало ли, какие еще могут быть причины. Есть «народные умельцы», которые например из образов дисков PS1 убирают «лишние» дорожки или выкладывают дампы картриджей, заведомо неиграбельные. Более того, начав играть, вы можете не пройти игру до конца по причине того, что она плохо эмулируется, и зависнет на самом интересном месте. Это справедливо для эмуляции более современных и сложных систем. Для, например, восьмибитных консолей все немного проще: игра либо запускается и работает от начала до конца, либо не запускается вообще и сразу'). Просто, чтобы вы были готовы').

    Начнем с самого сложного - PCSX-Reloaded версии 1.9.92. Сложный он еще и потому, что все настройки можно редактировать только тогда, когда он не работает. Иными словами, вы сможете проверить результат только после запуска рома, а чтобы продолжить настройку, нужно будет перезапустить эмулятор, видимо, так его задумали разработчики'). Я уже говорил, что в этой программе придется подбирать настройки под каждую конкретную игру. Нередко это так и есть, в основном, смотря по тому, сколько игре требуется ресурсов, и сколько ресурсов готов выделить ваш компьютер. Но я могу предложить вам некоторые настройки, с которыми вы сможете сыграть в большинство игр. Интерфейс программы у меня английский, поэтому все пункты настроек будут на английском.

    Запускаем программу, идем в Configurations - Plugins & BIOS. Нас интересует OpenGL Driver. Приступаем к настройке, жмем кнопку правее.

    OpenGL Driver Configuration:
    Window options - Width: 640, Height: 480. Разрешение окна можете выставить, например, 800x600, но это - стандартное для Play Station 1, да и смысла ставить больше нет, качество от этого точно не улучшится. Для некоторых игр, возможно, понадобится Keep psx aspect ratio, но я не использую, опция может искривить картинку (можете поэкспериментировать).
    Framerate - ставьте галки напротив Use FPS limit и Use Frame skipping. Поставьте галку напротив и выставьте FPS limit manual: 60 FPS (или согласно частоте вашего монитора). Если этого не сделать, количество кадров в секунду в игре может существенно проседать, и могут возникнуть проблемы с синхронизацией звука, такова особенность эмулятора').
    Misc - поставьте галки напротив Scanlines, Unfiltered MDEC и Use OpenGL extensions. В Scanlines введите либо 10 (тонкие горизонтальные полоски), либо -1 (точки). Они немного приукрашивают графику, и, как бы странно не звучало, иногда помогают устранить «стрекочущий» звук.
    Textures - пункты здесь пронумерованы, поэтому укажу только цифры. Quality: 3, Filtering: 6, HiRes: 2. Vram size впишите согласно количеству вашей видеопамяти в мегабайтах, например 512, 1024...,но не более фактической! А лучше - оставьте как есть'). Идем далее.
    Compatibility - Offscreen Draving: 4, Framebuffer textures: 2, Framebuffer acess: 4. Здесь же, чтобы избежать гарантированных проблем с некоторыми играми, ставим галки напротив Mask bit detection, Alpha Multipass и Advanced blending.
    Special game fixes - ставим галки напротив Use game fixes, Odd/even hack и Fake 'gpu busy'. Больше здесь ничего трогать не нужно.

    Конфигурация драйвера OpenGL (http://s019.radikal.ru/i621/1505/e4/053feb2d6711.png)

    SDL Sound Configuration:
    General - Volume: Medium, Reverb: Simple, Interpolation: Cubic. Чуть ниже ставим галки напротив Adjust XA speed, High compatibility mode, SPU IRQ Wait и Single channel sound. Последний пункт преобразует стерео в двойное моно, честно говоря, его можно и не включать, по моим наблюдениям, на совместимость и скорость он не влияет.

    Gamepad/Keyboard Input Configuration:
    Controller 1 - Device: USB Gamepad, Type: Digital Pad. У меня джойстик без стиков, поэтому я настраиваю Digital Pad. Если у вас настоящий «соньковский» джойстик, выберите Analog Pad и настройте направления для стиков. Схему расположения кнопок на джойстике PS1 вы, думаю, помните').

    CD-ROM Drive Reader:
    Настройки здесь нужны, если вы собираетесь запускать игру с реального диска (с вашего CD-ROM'а). Select CD-ROM device - впишите свое устройство чтения дисков, у меня это /dev/sr0. Так же поставьте галку напротив Enable subchannel read, что тоже может пригодиться в некоторых играх.

    BIOS:
    По умолчанию здесь Simulate PSX BIOS. Если вы найдете оригинальные BIOS'ы и положите их в ~/.pcsx/bios, то после перезапуска эмулятора, они появятся в этой папке. Оригинальные образы BIOS нужны для запуска большинства игр, или, например, в случаях, когда игра «не видит» джойстик.

    Собственно, для PCSX-Reloaded на этом все. С такими настройками у меня запускаются и работают практически все интересующие меня игры. Скажу еще: в этих настройках упор сделан на качество и совместимость, а не на скорость. Если вы собираетесь запускать эмулятор на слабом ПК, скорее всего, вам придется подгонять некоторые настройки «под себя» и жертвовать качеством картинки. В основном, это будет касаться настроек Window options, Textures и Compatibility, где чем меньше цифра, тем хуже качество и быстрее скорость.
  • nessness 19.05.2015
    Теперь рассмотрим конфигурацию для Snes9X версии 1.53 так же, с английским интерфейсом ( в моей версии - частично на русском). Эмулятор более простой приставки, соответственно и в настройке проще. Здесь нужно сделать вот что.

    Запускаем программу, открываем View - Change Size, и выбираем нужный вариант из Correct Aspect, например 2x. Затем идем в Options - Preferences. Если нужно, выбираем в Apply scaling filter Scanlines, и ниже Scanline intensity - 12,5%. Это несколько «облагородит» картинку, но может существенно замедлить скорость эмуляции на слабых ПК и иногда вызвать проблемы со звуком. Можно и вовсе ничего не выбирать. На вкладке Sound в Sound driver можно выбрать необходимый звуковой драйвер (у меня PortAudio, если у вас есть какие-нибудь проблемы со звуком попробуйте PulseAudio). Но до этого, запустите какую-нибудь игру (File - Open ROM...) и послушайте звук. Если все устраивает, ничего здесь не меняйте.

    На вкладке Joypads настраиваются кнопки клавиатуры или джойстика. Жмем напротив Up, и начинаем по порядку нажимать нужные нам кнопки. После настройки джойстика идем в Shortcuts, а именно, в Save States. В Quick Save напротив Slot 0 жмем, например, F5, а в Quick Load напротив Slot 0 - F8. Этими кнопками вы будете быстро сохраняться и загружаться с места последнего сохранения. Ну, или ничего не трогайте, и играйте без сохранений'). Далее, жмем Применить и OK.

    Для Snes9X основная настройка закончена. С остальными пунктами можете поэкспериментировать сами, но у меня и так все отлично работает.

    Для эмулятора FCEUX 2.2.2 все еще проще'). Перво-наперво, идем в Options - Video Config, и прописываем X и Y scaling factor, например, 2,0 и 2,0 соответственно. Эта настройка пропорционально увеличивает размер картинки. Обратите внимание, что, например, 1,5 или 2,8 не сохраняются, используйте только целые значения. Здесь же, в опциях, идем в Gamepad Config и настраиваем управление, нажимая Change напротив интересующей кнопки, затем нажимая собственно удобную нам кнопку. Для настройки Up, Down, Left, Right нужные кнопки придется нажимать по два раза (вероятно, используется что-то вроде калибровки). На этом настройка FCEUX заканчивается.

    На самом деле, любые настройки вы можете изменять на свое усмотрение, все зависит от того, на какой машине запускается эмулятор, и насколько качественной эмуляции вы хотите добиться. Приведенные выше конфигурации точно работают у меня, и я уверен, будут рабочими для вас. В противном случае, вы всегда можете решить все возникающие проблемы воспользовавшись поиском, ну, или, задать вопрос здесь, в этой теме.
  • nessness 29.05.2015
    Дополню вариантом настроек для Gens/GS версии r7').

    Не самый сложный в настройках эмулятор. Идем в Graphics - Backend и выбираем SDL+OpenGL. Теперь можно задать интересующий размер окна эмулятора в OpenGL Resolution (ниже). В Sound просто поставьте все галки, это нужно для корректного воспроизведения звука. Здесь же, в Rate, выберите подходящую вам частоту (я всегда выбираю 44,100 Hz). В Options - General Options... в Miscellaneous (!) обязательно поставьте галку Auto Fix Checksum. Это необходимо в том случае, если вы собираетесь запускать переведенные игры, либо различные хаки. В противном случае, в таких играх вы будете наблюдать только «красный экран»'). Остальные настройки здесь - на ваше усмотрение. Обязательно нажмите «Применить».

    В Options - Joypads... обратите внимание, есть ли в Detected Input Devices (внизу слева) ваш джойстик (он должен быть подключен до запуска эмулятора!), выставьте Port 1 - Player 1 - 6 buttons . Нажмите «Configure», затем справа в Configure Player 1 жмите «Change» напротив интересующей кнопки, затем - удобную вам кнопку на джойстике (аналогично FCEUX). Если вы ошиблись в настройке управления, используйте Clear All Buttons. Не забудьте про «Применить»!

    Для подключения BIOS (если нужно), зайдите в Options — BIOS/Misc Files... и укажите путь до файла.

    На этом все. Про Gens/GS скажу еще вот что. Программа достаточно старая, поэтому возможны некоторые баги. Например, при попытке закрыть полноэкранный режим, может закрыться сам эмулятор'). Чтобы в результате какого-либо сбоя при первом запуске настройки не сбросились, не спешите начинать игру, сначала перезапустите программу.
  • nessness 30.07.2015
    Эмулятор higan v094 будем настраивать примерно так'). При запуске эмулятора вы увидите окно Game Library, которое пока можно просто закрыть. Идем в Settings-> Configuration.., где сразу же переназначаем кнопки джойстика на более нам удобные. Делается это на вкладке Input уже описанным (и неоднократно) выше способом, принцип которого одинаков для любого эмулятора. Единственное отличие — здесь вам нужно будет настроить джойстик несколько раз - отдельно под каждую систему (но вы можете настроить кнопки только для той системы, в игры для которой планируете играть'). Выбрать ее можно в выпадающем списке слева.

    На вкладке Advanced можно выбрать драйверы для видео, аудио и устройств управления. У меня - SDL, ALSA и udev соответственно. Если у вас нет проблем ни с первым, ни со вторым, ни с третьим, рекомендую ничего здесь не менять. На этой же вкладке можно указать путь к игровой библиотеке (не вашей коллекции игр, а именно к Game Library, которую создаст и будет использовать higan!), и нужно ли запускать ее окно при старте программы.

    Вкладка Timing поможет синхронизировать аудио и видео, либо устранить (или частично устранить) возможные проблемы со звуком, например треск. Опять же, если проблем нет, пропустите эту вкладку.

    В Settings -> Video у меня стоят галки на Scale (растягивает изображение согласно размерам рамки окна) и Aspect Correction (не позволяет искажать оригинальные пропорции картинки). Кстати, у higan нет настроек разрешения, и вы можете изменить размер простым растягиванием окна мышой').

    А вот теперь жмем Library, выбираем интересующую игровую систему, жмем вкладку Import -> Import Game… и показываем эмулятору прямо на вожделенный игровой ром. К сожалению, добавлять ромы можно только по одному за раз'(. В дальнейшем, при открытии библиотеки, вам нужно будет просто выбрать игру (не забываем ткнуть во вкладку с названием необходимой игровой системы!) и нажать Load в правом нижнем углу.

    На что еще хочу обратить внимание:

    - раньше, еще в бытность higan'а bsnes'ом, существовала возможность пакетного добавления игр в библиотеку посредством терминала. К сожалению, команду я давно забыл, а в новой версии эмулятора никаких упоминаний ее не нашел, возможно, автор просто удалил за ненадобностью.
    - для тех, кто владеет английским хотя бы на уровне поверхностного понимания (типа меня'), в /usr/share/doc/higan/ лежит неплохой файл справки higan user guide, который можно посмотреть, например, Firefox'ом.
  • nessness 30.10.2015
    Давно хотел посмотреть на эмулятор Mednafen, решил поизучать на досуге. Описание добавлять не буду, иначе сайт об Ubuntu превратится в ресурс об эмуляторах'). Перевожу, скорее, для себя, пользуюсь электронным переводчиком, правлю уже на основе готового перевода и исходного текста. Основная задача – чтобы было понятно, о чем речь, а не чтобы дословно, как-то так'). Многого не понимаю, но стараюсь, в связи с чем конструктивная помощь приветствуется'). В перспективе, возможно, гляну что-нибудь интересное по другим эмуляторам, смотря по тому, как наша ривьерская любовь сложится с этим, первым. Выкладывать буду частями, по мере готовности. Кому интересно – заходите').

    Ну вот. Мой «вольный», во всех смыслах, перевод части General Documentation для эмулятора Mednafen, а точнее — его наиболее интересные и полезные моменты (полный вариант в английской версии занимает 27 печатных листов'). Перевожу, потому как эмулятор полностью управляется из консоли и правкой конфига. Для версии 0.9.38.5 по состоянию на 26 июня 2015 года.

    *** *** ***

    ЭМУЛЯЦИЯ CD

    Mednafen может запускать игры с CD-ROM, сохраненные в образ диска BIN+CUE. Поддержка физических CD была удалена в версии 0.9.38.

    ИГРЫ НА НЕСКОЛЬКИХ CD [в оригинале — Multiple-CD Games]

    Чтобы играть в игры, состоящие более чем из одного CD, создайте файл с расширением .M3U и впишите в него имена файлов CUE/TOC/CCD, по одному на строку. Загрузите его в Mednafen вместо CUE/TOC/CCD и используйте F6 и F8 для переключения между доступными дисками. Желательно, чтобы ваш файл .M3U и CUE/TOC/CCD находились в одном каталоге.

    КОМБИНАЦИИ КЛАВИШ

    [в формате «КЛАВИША — ДЕЙСТВИЕ — СТРОКА КОНФИГУРАЦИИ», так как я не уверен, что смогу добавить сюда таблицу')]

    F1---показывает экран помощи (в игре)---toggle_help
    F5---сохранение---save_state
    F7---загрузка---load_state
    0 - 9---выбрать слот для сохранения---значения от 0 до 9
    - --- выбрать слот для сохранения (по убывающей)---state_slot_dec
    =---выбрать слот для сохранения (по нарастающей)---state_slot_inc
    Alt + S---включает 600-кадровое (~10 секунд для NES) сохранение состояния для перемотки. По умолчанию отключено---state_rewind_toggle
    [проще говоря — помнит последние десять секунд для того, чтобы можно было отмотать назад]
    Shift + F5---запись видео---save_movie
    Shift + F7---воспроизведение видео---load_movie
    Shift + 0… 9---выбрать слот для видео---значения от m0 до m9
    Alt + C---показать консоль читов---togglecheatview
    Alt + T---показать активные читы---togglecheatactive
    T---показать консоль вывода сетевой игры---togglenetview
    Alt + D---запустить отладчик---toggle_debugger
    Alt + A---начать покадровый просмотр (advance mode)---advance_frame
    Alt + R---закончить покадровый просмотр---run_normal
    Shift + F1---показать счетчик кадров---toggle_fps_view
    Backspace---перемотка (если функция сохранения состояния для перемотки включена)---state_rewind
    F9---сделать снимок экрана---take_snapshot
    Shift + F9---сделать снимок экрана с эффектами масштабирования и пр.---take_scaled_snapshot
    Alt + O---повернуть экран---rotate_screen
  • nessness 30.10.2015
    Alt + Enter---переключиться в полноэкранный режим---toggle_fs
    Ctrl + 1… 9---переключить слои---значения от tl1 до tl9
    [не понял назначения. работает только ctrl+1, включает/отключает gpu]
    ` ---ускорение---fast_forward
    \ ---замедление---slow_forward
    F3---определить аналоговые кнопки на физических джойстиках/геймпадах (используется в процессе конфигурации ввода)---input_config_abd
    [Здесь есть указание по очереди задействовать все аналоговые кнопки, а затем нажать F3, после чего настроить кнопки обычным способом. Однако, при каждом следующем запуске эмулятора, процедуру с аналоговыми кнопками придется повторять]
    Alt + Shift + 1… 8---настроить кнопки устройства, подключенного к порту 1… 8---input_config 1… 8
    Ctrl + Shift + 1… 8---выбрать порт вводного устройства---device_select 1… 8
    F2---Activate in-game input configuration process for a command key.---input_configc
    [не совсем понял, о чем речь, так же как и… ]
    Shift + F2---Like F2, but after configuration completes, to activate the configured command key will require all buttons configured to it to be in a pressed state simultaneously to trigger the action. Note that keyboard modifier keys(CTRL, ALT, SHIFT) are still treated as modifiers and not discrete keys.---input_configc_am
    Scroll Lock---захват мыши в оконном режиме (например, для PC Engine)---toggle_grab_input
    Shift + Scroll Lock---захват + отключение для прямого доступа к кнопкам эмулируемого устройства (например, для Famicom Family Keyboard)---toggle_cdisable
    F10---сброс---reset
    F11---отключение питания [то же, что и hard reset]---power
    Escape/F12---выход из эмулятора, либо сетевого чата---exit

    КОМАНДНАЯ СТРОКА

    Mednafen поддерживает параметры, которые передаются командной строке. Параметры передаются в виде -<ОПЦИЯ> <ЗНАЧЕНИЕ>. Некоторые параметры не имеют значений.

    В дополнение к опциям, перечисленным в таблице ниже, некоторые настройки в разделе "НАСТРОЙКИ" можно установить, предварив их дефисом (-), за которым следует значение, например -nes.slstart 8.

    [в формате «ОПЦИЯ – ЗНАЧЕНИЕ X – ОПИСАНИЕ»]

    -force_module x---строка---принудительно использовать необходимый модуль эмуляции
    -connect---нет значения---триггер для подключения к удаленному хосту после того, как игра загружена
    -soundrecord x---строка---сохранение звука в формате MS WAV с пользовательским наименованием
    -qtrecord x---строка---сохранение видео и аудио в QuickTime
    с пользовательским наименованием

    ФАЙЛЫ КОНФИГУРАЦИИ

    Mednafen использует единый конфигурационный файл – mednafen-09x.cfg, который находится в главной директории [~/.mednafen]. Этот файл создается и сохраняется, когда эмулятор выключается.

    Так же, опционально, Mednafen загружает настройки из помодулевых [в оригинале – per-module] файлов конфигурации, находящихся непосредственно в его главной директории. Общий формат для наименования этих пользовательских файлов – <СИСТЕМА>.cfg, например nes.cfg, psx.cfg… Это позволяет переопределить глобальные настройки отдельно для каждого модуля.

    Поигровые конфигурационные файлы так же поддерживаются. Их можно создавать в директории pgconfig, которая расположена в основной директории Mednafen. Названия таких файлов должны быть в виде <ИМЯ ФАЙЛА>.<СИСТЕМА>.cfg, например Super Cool Game.nes.cfg.

    Вышеупомянутые помодулевые и поигровые настройки не будут записаны Mednafen и, вероятно, не изменят содержимое главного конфигурационного файла, если действия пользователя не приведут к новым значениям опций, которые будут сформированы на основе текущего активного значения, например включение/выключение полноэкранного режима. Некоторые настройки пока не могут быть переопределены правильно: cd.image_memcache, filesys.untrusted_fip_check, .enable.

    СПРАВКА ПО ГЛОБАЛЬНЫМ ПАРАМЕТРАМ

    Предостережение: все настройки, приводящие к изменению поведения при эмуляции, показаны жирным шрифтом [у меня – КАПСОМ]. Следует иметь в виду, что если вы изменяете значения настроек при сетевой игре или видеозаписи, это может привести к рассинхронизации, если одинаковые значения не установлены между узлами, либо между пишущим и воспроизводящим эмулятором. [Ну, речь о том, что если вы записали видео в «родном» формате Mednafen, а позже изменили некоторые настройки, то он может не воспроизвести свое же видео, например'). Ниже – довольно большая таблица в формате «НАСТРОЙКА – ТИП ЗНАЧЕНИЯ – ВОЗМОЖНЫЕ ЗНАЧЕНИЯ – ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ – ОПИСАНИЕ». Собственно, она и требуется для изучения и правки того самого mednafen-09x.cfg. Я, конечно, очень постараюсь разобраться… чуть позже'))]
  • nessness 31.10.2015
    autosave-----логическое-----0 1-----0-----автоматическая загрузка/сохранение. Автоматическое сохранение или загрузка сохраненного состояния игры, когда игра закрывается или запускается.
    cd.image_memcache-----логическое-----0 1-----0-----кеширование CD в память. Помещает образ целиком в память при запуске (что вызывает небольшую задержку). Позволяет избежать hiccups [возможно, речь про ситуацию, когда игра идет как бы рывками] при доступе к CD. Может принести больше вреда, чем пользы в системах с небольшим объемом памяти, поддержкой свопа или расположении образа на быстром SSD.
    сheats-----логическое-----0 1-----1-----включить читы
    debugger.autostepmode-----логическое-----0 1-----0-----автоматический переход в step mode отладчика после загрузки игры
    ffnosound-----логическое------0 1-----0-----выключить звук во время быстрой перемотки
    ffspeed-----вещественное-----1… 15-----4-----скорость быстрой перемотки
    fftoggle-----логическое-----0 1-----0-----считать кнопку быстрой перемотки выключателем [не совсем понял, о чем речь]
    filesys.fname_movie-----строка-----%f.%M%p.%x-----формат строки для наименования видео. Подробнее смотрите в fname_format.txt. [файл расположен по адресу /usr/share/doc/mednafen/fname_format.txt] Редактируете на свой риск.
    filesys.fname_sav-----строка-----%F.%M%x-----формат строки для наименования сохраненных игр. ВНИМАНИЕ: %x должен присутствовать всегда, дабы избежать риска перезаписи сохранений. Подробнее смотрите в fname_format.txt. Редактируете на свой риск.
    filesys.fname_snap-----строка-----%f-%p.%x-----формат строки для наименования скриншотов. ВНИМАНИЕ: %x или %p должны присутствовать всегда, дабы избежать конфликта между счетчиком текстового файла и данными файла изображения. [не понял, в оригинале …otherwise there will be a conflict between the numeric counter text file and the image data file')] Подробнее смотрите в fname_format.txt. Редактируете на свой риск.
    filesys.fname_state-----строка-----%f.%M%X----- формат строки для наименования сохранений. Подробнее смотрите в fname_format.txt. Редактируете на свой риск.
    filesys.path_cheat-----строка-----cheats-----директория читов
    filesys.path_firmware-----строка-----firmware-----директория прошивок [BIOS]
    filesys.path_movie-----строка-----mcm-----директория видеозаписей
    filesys.path_palette-----строка-----palettes-----директория пользовательских палитр
    filesys.path_pgconfig-----строка-----pgconfig-----директория файлов поигровых конфигураций
    filesys.path_sav-----строка-----sav-----директория сохраненных игр и долговременной [в оригинале – nonvolatile] памяти. ВНИМАНИЕ: не указывайте эту директорию, как место хранения образов Famicom Disk System, иначе вы повредите их после игры и выхода из Mednafen.
    filesys.path_snap-----строка-----snaps-----директория скриншотов
    filesys.path_state-----строка-----mcs-----директория сохранений
    filesys.state_comp_level-----целое----- –1… 9-----6-----уровень сжатия файлов сохранений. –1 отключает сжатие.
    filesys.untrusted_fip_check-----логическое-----0 1-----1-----включить проверку безопасности ненадежных файловых путей. Если установлено 1, пути к файлам из CUE или PSF проверяются на определенные символы, которые могут быть использованы в обход каталога, и загрузка образа прервется. Установив значение 0, вы разрешаете абсолютные пути в CUE, поэтому должны понимать последствия для безопасности. Смотрите секцию «ПРОБЛЕМЫ БЕЗОПАСНОСТИ».
    input.autofirefreq-----целое-----0… 1000-----3-----частота автоогня [auto-fire, возможно, речь об автоповторе, сиречь turbo у джойстика dendy]
    input.ckdelay-----целое-----0… 99999-----0-----длительность «опасной» команды. Продолжительность времени в миллисекундах, в течение которого клавиша, соответствующая «опасному» действию (сброс, выход и пр.) будет нажата, прежде чем произойдет выполнение команды.
    input.joystick.axis_threshold-----вещественное-----0… 100-----75-----порог обнаружения аналоговых осей [например, геймпада] в процентах.
    input.joystick.global_focus-----логическое-----0 1-----1-----обновление физического состояния джойстика, даже если окно Mednafen не в фокусе.
    netplay.gamekey-----строка-----кнопка сравнения хеша MD5 с хешем игры [не понял]
    netplay.host-----строка-----netplay.fobby.net-----имя узла сервера
    netplay.localplayers-----целое-----0… 16-----1-----количество локальных игроков. Количество локальных игроков при сетевой игре. Это число задается сервером. Сервер может назначить меньшее количество игроков, если оно превысит количество доступных контроллеров.
    netplay.nick-----строка-----имя в сетевом чате
    netplay.password-----строка-----пароль для подключения к серверу
    netplay.port-----целое-----1… 65535-----4046-----порт сервера
  • nessness 31.10.2015
    netplay.smallfont-----логическое-----0 1-----0-----использовать мелкий шрифт в сетевом чате.
    nothrottle-----логическое-----0 1-----0-----отключить ограничение скорости, если звук выключен.
    osd.alpha_blend-----логическое-----0 1-----1-----включить альфа-смешивание для элементов OSD.
    osd.message_display_time-----целое-----0… 15000-----2500-----продолжительность времени в миллисекундах, в течение которого отображаются сообщения о состоянии и ошибках. Длительность менее 100 миллисекунд рекомендуется, если вы не против пропустить нефатальные сообщения об ошибках, и понимаете, что процесс конфигурации ввода может стать неюзабельным [весьма тонкий троллинг от разработчика')]
    osd.state_display_time-----целое-----0… 15000------2000------ продолжительность времени в миллисекундах, в течение которого отображается информация о сохранении состояния или видео.
    qtrecord.h_double_threshold-----целое-----0… 1073741824-----256-----удвоение высоты изображения при видеозаписи, если она ниже указанного порога.
    qtrecord.vcodec-----перечисление-----raw cscd png-----cscd-----используемый видеокодек. RAW — быстрый кодек, но огромный размер файла быстро заполнит ваш носитель информации. CSCD – CamStudio Screen Codec, хороший баланс между производительностью и степенью сжатия. PNG – лучшая степень сжатия, чем у CSCD, но более интенсивное использование CPU.
    qtrecord.w_double_threshold-----целое-----0… 1073741824-----384-----удвоение ширины изображения при видеозаписи, если она ниже указанного порога.
    sfspeed-----вещественное-----0.25… 1-----0.75-----скорость замедленной перемотки.
    sftoggle-----логическое-----0 1-----0----- считать кнопку замедления выключателем.
    sound-----логическое-----0 1-----1-----включить звук
    sound.buffer_time-----целое-----0… 1000-----0-----размер буфера в миллисекундах. Значение 0 соответствует автоматическому выбору размера.
    sound.device-----строка-----default-----звуковое устройство по умолчанию.
    sound.driver-----перечисление-----default alsa oss wasapish dsound wasapi sdl jack-----default-----звуковой драйвер по умолчанию. Нижеследующие возможные варианты отсортированы в порядке их предпочтительности… [я только перечислю их]. DEFAULT, ALSA, OSS, WASAPISH, DSOUND, WASAPI, SDL, JACK.
    sound.period_time-----целое-----0… 100000-----0-----размер цикла в микросекундах. Влияет на вывод только в OSS, ALSA, WASAPI (Exclusive Mode), и SDL.
    sound.rate-----целое-----22050… 192000-----48000-----частота звука (в Hz).
    sound.volume-----целое-----0… 150-----100-----уровень звука в процентах. Значение выше 100 процентов может исказить звук.
    srwframes-----целое-----10… 99999-----600-----количество кадров для сохранения состояния, если соответствующая функция перемотки включена [state_rewind_toggle]. ВНИМАНИЕ: большие значения могут привести к чрезмерному потреблению оперативной памяти, например в играх, которые считывают большой объем данных с CD.
    video.blit_timesync-----логическое-----0 1-----1-----Enable time synchronization(waiting) for frame blitting. [не совсем понял, что-то про синхронизацию кадров, в пояснении говорится, что Disable to reduce latency, at the cost of potentially increased video "juddering", with the maximum reduction in latency being about 1 video frame's time.]
    video.deinterlacer-----перечисление-----weave bob bob_offset-----weave-----деинтерлейсер для использования с чересстрочным видео. WEAVE – подходит для «спокойного» видео, может использоваться с negative scanlines. BOB – Good for causing a headache [не понял, видимо игра слов')]. BOB OFFSET – подходит для быстрого видео, но последнее может мерцать. Уменьшает субъективное разрешение по вертикали.
    video.disable_composition-----логическое-----0 1-----1-----попытаться отключить композит (применимо к Windows Vista и Windows 7).
    video.driver-----перечисление-----opengl sdl overlay-----opengl-----метод вывода видео/драйвер. OPENGL является предпочтительным. В SDL и OVERLAY недоступно большинство возможностей.
  • nessness 01.11.2015
    video.frameskip-----логическое-----0 1-----1-----включить пропуск кадров во время эмуляции.
    video.fs-----логическое------0 1-----0-----включить полноэкранный режим.
    video.glvsync-----логическое-----0 1-----1-----включить вертикальную синхронизацию в OpenGL. Примечание: если переменная "__GL_SYNC_TO_VBLANK" не существует, она будет создана и для данного параметра будет установлено значение по умолчанию. Это принудительно включит/отключит синхронизацию в Linux с драйверами Nvidia.
    (system).enable-----логическое-----0 1-----1-----использовать (автоматически) указанный модуль [модуль эмуляции, например gba или snes]
    (system).forcemono [Под (system) здесь подразумеваются cdplay, demo, gb, gba, gg, lynx, md, ngp, pce, pce_fast, pcfx, psx, sms, snes, vb, wswan]-----логическое-----0 1-----0-----принудительный вывод звука в моно.
    (system).pixshader-----перечисление-----none autoip autoipsharper scale2x sabr ipsharper ipxnoty ipynotx ipxnotysharper ipynotxsharper-----none-----включить специфический шейдер OpenGL. Работает только с соответствующим образом настроенным video.driver и только с картами, поддерживающими шейдеры OpenGL. [далее просто перечислю] NONE, AUTOIP, AUTOIPSHARPER, SCALE2X, SABR, IPSHARPER, IPXNOTY, IPXNOTX, IPXNOTYSHARPER, IPXNOTXSHARPER.
    (system).scanlines-----целое---- –100… 100-----0-----включить scanlines с заданной прозрачностью. Степень прозрачности указывается в процентах. Значение 100 соответствует полностью черным scanlines.
    (system).special-----перечисление-----none hq2x hq3x hq4x scale2x scale3x scale4x 2xsai super2xsai supereagle nn2x nn3x nn4x nny2x nny3x nny4x-----none-----указать специальное видеомасштабирование [здесь автор рассуждает о том, какие скалеры выглядят лучше или хуже, просто перечислю]. NONE, HQ2X, HQ3X, HQ4X, SCALE2X, SCALE3X, SCALE4X, 2XSAI, SUPER2XSAI, SUPEREAGLE, NN2X, NN3X, NN4X, NNY2X, NNY3X, NNY4X.
    (system).stretch-----перечисление-----0 full aspect aspect_int aspect_mult2-----aspect_mult2-----растянуть изображение на весь экран. 0 – отключено. FULL – растягивает на весь экран, не сохраняя соотношение сторон. ASPECT – растягивает изображение, на сколько позволяет соотношение сторон (соответственно xscalefs == yscalefs). ASPECT_INT – то же самое, но xscalefs и yscalefs округляются в меньшую сторону до ближайшего целого значения. ASPECT_MULT2 – то же самое, что и ASPECT_INT, но значения округляются в меньшую сторону до ближайшего числа, кратного 2.
    (system).tblur-----логическое-----0 1-----0-----включить временное размытие видео (50/50 предыдущий/текущий кадр по умолчанию).
    (system).tblur.accum-----логическое-----0 1-----0-----собирать данные о цветности вместо отбрасывания.
    (system).tblur.accum.amount-----вещественное-----0… 100-----50-----сила размытия в режиме накопления, указывается в процентах от буфера накопления и текущего кадра.
    (system).videoip-----перечисление-----0 1 x y-----(переменное)-----включить (би)линейную интерполяцию. 0 – выключено, 1 – билинейная, X – линейная по оси X, Y – линейная по оси Y.
    (system).xres-----целое-----0… 65536-----0-----разрешение по горизонтали в полноэкранном режиме. Значение 0 соответствует текущему горизонтальному разрешению монитора.
    (system).xscale-----вещественное-----0,01… 256-----(переменное)-----коэффициент масштабирования по горизонтали в оконном режиме.
    (system).xscalefs-----вещественное-----0,01… 256-----1.000000----- коэффициент масштабирования по горизонтали в полноэкранном режиме. Чтобы эта настройка возымела эффект, в (system).stretch должен быть указан 0.
    (system).yres-----целое-----0… 65536-----0-----разрешение по вертикали в полноэкранном режиме. Значение 0 соответствует текущему вертикальному разрешению монитора.
    (system).yscale-----вещественное-----0,01… 256-----(переменное)---- коэффициент масштабирования по вертикали в оконном режиме
    (system).yscalefs-----вещественное-----0,01… 256-----(переменное)-----коэффициент масштабирования по вертикали в полноэкранном режиме. Чтобы эта настройка возымела эффект, в .stretch должен быть указан 0.
    (system).debugger.disfontsize [Под (system) здесь подразумеваются md nes pce pcfx psx vb wswan]-----перечисление-----xsmall small medium large-----small-----disassembly font size [не понял, наверно про размер шрифта в отладчике]. Примечание: установка размеров больше, чем по умолчанию, может привести к наложению шрифтов в отладчике. XSMALL – 4x5, SMALL – 5x7, MEDIUM – 6x13, LARGE – 9x18.
    (system).debugger.memcharenc [Под (system) здесь подразумеваются md nes pce pcfx psx vb wswan]-----строка-----(переменное)-----кодировка символов для отладчика редактора памяти.
  • nessness 01.11.2015
    ПРОШИВКИ/BIOS

    Некоторым эмуляционным модулям для работы нужны образы BIOS. Если путь к файлу прошивки не абсолютный (не начинается с C: / или \), Mednafen попробует загрузить его из относительной директории firmware, расположенной в его главной директории. Если он ее [прошивку] не найдет, произойдет загрузка из относительной главной директории. Конечно же, если в path_firmware прописан пользовательский путь, поиск файлов прошивки будет произведен по этому пути. [проще говоря, если у вас есть образ BIOS, киньте его либо в ~/.mednafen/firmware, либо непосредственно в ~/.mednafen].

    АВТОМАТИЧЕСКИЙ IPS-ПАТЧИНГ

    Поместите файл IPS в ту же директорию, что и загружаемый ром, и переименуйте его соответственно названию рома – <Полное Имя Рома.расширение>.ips, например, ром – Super Cool Game.nes, файл ips – Super Cool Game.nes.ips.

    Некоторые операционные системы и среды скрывают файловые расширения. Помните об этом, чтобы избежать проблем… Динамический патчинг неприменим к образам CD и прошивкам.

    МИНИМИЗАЦИЯ ЗАДЕРЖЕК АУДИО/ВИДЕО/ВВОДА

    [эта секция все еще находится в процессе написания, поэтому разработчики приводят различные полезные ссылки на сторонние ресурсы, но здесь можно-таки найти несколько полезных советов')]

    ВЫБОР ОБОРУДОВАНИЯ – ВИДЕОКАРТA

    Высокопроизводительные дискретные видеокарты предпочтительнее, что-то похожее или лучше, чем NVidia GeForce 9500GT вполне подойдет.

    ВЫБОР ОБОРУДОВАНИЯ – МОНИТОР

    [очень кратко] Монитор, поддерживающий развертку 120 Hz и задержку ниже средней (16ms) был бы идеальным.

    НАСТРОЙКИ ДЛЯ МИНИМИЗАЦИИ ВИДЕОЗАДЕРЖКИ

    video.driver – opengl
    video.glvsync – 0
    video.blit_timesync – 0

    Для операционной системы: отключите vsync и triple-buffering в настройках драйвера своей видеокарты. Укажите значение для «max frames to render ahead» (NVidia) или «flip queue size» (AMD/ATI), равное 0 (для Windows). Отключите композитор (Aero в Windows Vista, например).

    Для Mednafen: через соответствующие настройки, приведите полноэкранное разрешение эмулятора к «родному» разрешению вашего монитора. Отключите специальные фильтры в Mednafen (hq2x, 2xsai, scale2x, temporal blur… ).

    НАСТРОЙКИ ДЛЯ МИНИМИЗАЦИИ АУДИОЗАДЕРЖКИ

    Для Mednafen: выберите звуковой драйвер, который более подходит к вашему оборудованию, например alsa для Linux, oss для различных UN*X-платформ или wasapi для Windows. Выберите звуковое устройство, которое соответствует вашему оборудованию, работающему с ALSA, например hw:0,0, hw:0,1… Старайтесь не использовать устройства, звук которых выводится через сервер PulseAudio! Установите, по возможности, самый маленький размер аудиобуфера, не вызывающий треск или проблемы со скоростью (20мс должно быть достаточно для ALSA и современных многоядерных процессоров). Опционально установите размер звукового цикла в 500 микросекунд (драйвер звуковой карты может некорректно читать маленькие значения, что вызовет сбои в работе карты или системы. Кроме того, драйвер звуковой карты может ограничить размер буфера до непригодно малых значений). Установите частоту звука соответственно нативной частоте звука своей звуковой карты. [здесь разработчики советуют, все же, оставить исходную частоту 48000 Hz].

    Для операционной системы: по возможности, отключите 3D, эквалайзер и прочие спецэффекты в настройках драйвера звуковой карты.
  • nessness 05.11.2015
    Частичный перевод мануала FCEUX от 24 июня 2012. Только секции «Options» и «Keyboard Commands», как наиболее важные (собственно, они там и единственные, не считая вступления). Использование: fceux ОПЦИЯ ФАЙЛ. Возможные значения указаны рядом в скобках. 0 – отключить, 1 – включить соответственно.

    ОПЦИИ

    РАЗНЫЕ ОПЦИИ

    --no-config (0/1)
    если выбрано, использовать файл конфигурации по умолчанию, но не перезаписывать его.
    -g (0/1) или --gamegenie (0/1)
    включить/отключить эмуляцию Game Genie
    --nogui (0/1)
    включить/отключить GTK UI [не работает]
    --loadlua ФАЙЛ
    загрузить lua скрипт из файла

    ОПЦИИ ЭМУЛЯЦИИ

    --pal (0/1)
    включить/отключить режим PAL

    ОПЦИИ ВВОДА

    -i УСТРОЙСТВО или --inputcfg УСТРОЙСТВО
    настроить устройство ввода при запуске. Устройства: gamepad, powerpad, hypershot, quizking.
    --input (1/2) УСТРОЙСТВО
    выбрать, какие устройства будут эмулироваться на входах 1 или 2. Устройства: gamepad, zapper, powerpad.0, powerpad.1, arkanoid.
    --input(3/4) УСТРОЙСТВО
    выбрать, какие устройства из расширенного набора Famicom будут эмулироваться на входах 3 и 4. Устройства: quizking, hypershot, mahjong, toprider, ftrainer, familykeyboard, oekakids, arkanoid, shadow, bworld, 4player.
    --inputdisplay (0/1)
    включить/отключить отображение ввода.
    --fourscore (0/1)
    включить/отключить эмуляцию Four Score

    ОПЦИИ ГРАФИКИ

    --newppu (0/1)
    разрешить/запретить использовать новый PPU (Может привести к повреждению текущих сохранений!)
    --frameskip ЧИСЛО
    указать количество пропускаемых кадров в секунду
    --clipsides (0/1)
    разрешить/запретить при выводе обрезку 8 пикселей слева и справа
    --slstart SCANLINE
    указать первую выводимую строку [Эту и следующую опцию я не понял. Речь идет о строках развертки, возможно, вместо SCANLINE нужно указать число]
    --slend SCANLINE
    указать последнюю выводимую строку.
    --nospritelim (0/1)
    если значение 0, отключает ограничение на обычные 8 спрайтов на строку, если 1 – включает. Примечание: да, эта опция работает «задом наперед».
    -x ЗНАЧЕНИЕ или --xres ЗНАЧЕНИЕ
    указать горизонтальное разрешение для полноэкранного режима.
    -y ЗНАЧЕНИЕ или --yres ЗНАЧЕНИЕ
    указать вертикальное разрешение для полноэкранного режима.
    --doublebuf (0/1)
    использовать или нет двойную буферизацию.
    --autoscale (0/1)
    включить/отключить масштабирование в полноэкранном режиме.
    --keepratio (0/1)
    использовать или нет оригинальные пропорции NES при масштабировании.
    --(x/y)scale ЗНАЧЕНИЕ
    указать множитель ширины/высоты.
    --(x/y)stretch (0/1)
    растянуть изображение по ширине/высоте до заполнения (только в OpenGL)
    -b (8/16/24/32) или --bpp (8/16/24/32)
    выбрать количество бит на пиксель.
    --opengl (0/1)
    включить/отключить поддержку OpenGL.
    --openglip (0/1)
    включить/отключить линейную интерполяцию в OpenGL.
    -f (0/1) или --fullscreen (0/1)
    включить/отключить полноэкранный режим.
    --noframe (0/1)
    (раз)декорировать окно [не работает]
    --special (1-4)
    выбрать специальный фильтр масштабирования видео (1 = hq2x, 2 = Scale2x, 3 = NTSC 2x, 4 = hq3x, 5 = Scale3x).
    -p ФАЙЛ или --palette ФАЙЛ
    использовать собственную палитру.
    --ntsccolor (0/1)
    использовать палитру NTSC
    --tint ЗНАЧЕНИЕ
    указать значение оттенка для NTSC
    --hue ЗНАЧЕНИЕ
    указать значение тона для NTSC

    ОПЦИИ ЗВУКА

    -s (0/1) или --sound (0/1)
    включить/отключить звук
    --soundrate ЧАСТОТА
    указать частоту воспроизводимого звука
    --soundq (0/1/2)
    указать качество звука (0 = плохое, 1 = хорошее, 2 = отличное)
    --soundbufsize МС
    указать размер звукового буфера в миллисекундах
    --volume (0-256)
    указать общий уровень громкости [от 0 до 256]
    --trianglevol (0-256)
    указать уровень громкости для треугольной волны
    --square1vol (0-256)
    указать уровень громкости для квадратной волны 1
    --square2vol (0-256)
    указать уровень громкости для квадратной волны 2
    --noisevol (0-256)
    указать уровень громкости для генератора шумов
    --lowpass (0/1)
    включить/отключить фильтр низких частот
    --soundrecord ФАЙЛ
    запись звука в файл

    ОПЦИИ ВИДЕОЗАПИСИ

    --playmov ФАЙЛ
    проиграть файл .fm2 [.fm2 – новое расширение для видеофайлов FCEUX. Для просмотра видео в .fcm требуется конвертирование]
    --pauseframe КАДР
    пауза на указанном кадре
    --moviemsg (0/1)
    включить/отключить сообщения в видео
    --fcmconvert ФАЙЛ
    конвертировать .fcm в .fm2
    --ripsubs ФАЙЛ
    конвертировать субтитры в .srt
    --subtitles (0/1)
    включить/отключить субтитры