Автор Тема: Эмулятор Nes на Playstation2 c возможностью игры вчетвером. Есть ли такой?  (Прочитано 8264 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,расчехлил свою PS2 и потестил немного эмуль. В целом хорошо, но есть и замечания. Самое неприятное - непосредственно в играх в нижней части экрана появилась черная бегающая полоса, в 90i и других версиях ее нет. На слух сравнивал три версии: вашу, 90i и Akuhak, 90i звучит хуже всех, ваша и Akuhak - одинаково. Пожоже у 90i частота и вовсе 11025hz, отсюда и прирост скорости. Можно ли в меню выбора звука добавить еще вариант 11025hz?  Возможно еще вариант с отрубанием каких-то каналов, такая опция есть в версии Fceux на PC. Далее, турбо кнопка A, та что на треугольнике не срабатывает, появляется только меню. По L1, как заявлено, меню не вызывается. Еще было бы удобней назначить кнопки подтверждения и отмены в меню на крест и ноль соответственно, сейчас же это ноль и треугольник. Также очень желательно добавить/заменить цветовые палитры, на такие такие как nestopia yuv, wavebeam, fceux, fbx composite direct, nes classic, sony20225as, hybrid если что скину файлы. Спасибо.
P.S. Фильтрация работает
« Последнее редактирование: 12 Апрель 2018, 16:23:21 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll, про звук забавно, в 90i всё-таки 44100Гц, компилировал недавно и звук здесь нравится больше. Проблема не в звуке, пробовал копировал весь код из sound.c. Если не было допущено ошибок, то дело в новой версии самого FCEU у которого бoльшая совместимость и соответствующее понижение скорости, это вроде норма. 11025hz можно добавить.
непосредственно в играх в нижней части экрана появилась черная бегающая полоса
Пример игры бы. У меня наоборот в Blaster Master были полосы лишние, а в версии Akuhak (которую я изменил) такого нет. Всё равно исправить не смогу, за это отвечает код FCEU. По-хорошему нужно портировать последние версии FCEUX или libretro-fceumm, если PS2 потянет.
Возможно еще вариант с отрубанием каких-то каналов, такая опция есть в версии Fceux на PC.
Если выставить в FCEUX качество Low, то останется 2 канала - это минимум, который и так используется.
Далее, турбо кнопка A, та что на треугольнике не срабатывает, появляется только меню. По L1, как заявлено, меню не вызывается.
Удалите старый конфиг (mc0:/FCEUMM/FCEUltra.cnf), оттуда берутся настройки кнопок.
Еще было бы удобней назначить кнопки подтверждения и отмены в меню на крест и ноль соответственно, сейчас же это ноль и треугольник.
Мне кажется изначально круг на выборе был из-за случайных нажатий при возврате в игру. Тут необходимо сделать возможность выбора с сохранением в конфиг.
Также очень желательно добавить/заменить цветовые палитры
Здесь они есть, кроме fceux и hybrid. В каком они виде? Нужно название, второе название, 64 числа.
P.S. Фильтрация работает
Значит только в эмуляторе не видно(

Если будет время добавлю палитры, 11025Гц, переназначение кнопок.

Оказалось что LowPass использовался раньше, но был убрал позже по какой-то причине. Зачем он нужен я всё равно не знаю.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,
Насчет полос. Они были в каждой игре, проверил около 20, например battle city, contra, трехглазый пацан, tmnt 3-4 и тд. Подозреваю косяк в эмуле а не в играх. Но раз с этим ничего не сделать, как вам идея внедрить доработки (какие возможно) в версию 0.90i ? Да, старое ядро но менее требовательное к железу. Добавить выбор качества/отключение звука, турбо кнопки, палитра там одна единственная и та пересвеченная, если не добавить, то хотя бы заменить на другую. Вполне себе годный эмуль бы получился для PS2...

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll, AKuHAK делал важные исправления для работы с новыми версиями ps2sdk, я скомпилировал 0.90i версию только убрав код вызывающий ошибки и то, экран криво отрисовывался. Так что это без меня.

В Battle City (J) у меня всё нормально, скрин внизу. Я ставлю Interlace, потому что в эмуляторе по-другому не получилось настроить. Не знаю как должно выглядеть на самой консоли. Код относительно экрана я не трогал, жалко конечно, что идёт растяжение. В экран PAL - тормоза, не уверен что оно может нормально работать. Эти все варианты мне не хочется тестировать и исправлять.

С фильтрацией: оказалось, что отключение линейной фильтрации в эмуляторе pcsx2 отключает и фильтрацию текстур, я думал это те дурацкие мутные фильтры, которые есть в эмуляторах 2D приставок. :)

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull, Потестил пару версий от Akuhak, самую раннюю и выложенную вами на 1й странице, полос нигде нет.  Самая первая его версия - самая быстрая, в ней он еще не перешел на ядро 160, ее и советовал бы допиливать. В последней сплошные тормоза

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Добавил палитры + стандартную от FCEU, благодаря этому в играх для VS. UniSystem нормальные цвета. На L3 можно вставить монету, это только для VS. UniSystem. Исправил баг, когда переключение палитры выделяло память.
В опциях звука добавил 11025 Гц и 44100 Гц.
Настройку кнопок не делал, это возможно будет последнее, что сделаю.

Racooll, экран вообще проблемный. Внутри эмулятора устанавливается 640x448 или 640х512 для PAL, при этом pcsx2 не умеет соблюдать соотношение сторон. Боюсь представить как это выглядит на реальном железе с разными экранами. Там ещё зачем-то от ширины и высоты отнимается один пиксель, надо будет убрать, в pcsx2 это заметно.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,  Понижение частоты дало существенный прирост скорости, теперь большинство игр не тормозят. Но главная проблема так и осталась - полоса. В других версиях эмуля их нет, нет и в меню, только в самих играх. Прикладываю видос

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll, ох, возможно знаю в чём проблема. Менял две строчки - порядок отправки картинки и синхронизации. В современном написании игр сначала рисуют, а потом синхронизируют картинку. Правда там отправляется по DMA, а не обычная рисовка кадра. Разницы не заметил при смене в pcsx2, но в примерах gsKit на GitHub кто-то правил порядок, поэтому оставил. Сейчас сделаю билд и здесь выложу, надеюсь вы протестируете.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
В fceu-packed.x.2.1_fix_sync.elf с фиксом и fceu-packed.x.2.1_fix_sync_FULLSCREEN.elf где используется экран на один пиксель шире и выше. Попробуйте увидеть справа и снизу убрались ли чёрные полоски толщиной в пиксель.

Дополнение: про ширину/высоту мне нужно узнать, чтобы определить была ошибка или сделано для реального железа, потому что, как писал уже, в pcsx2 можно заметить чёрные полосы из-за растяжения не на весь экран.
« Последнее редактирование: 14 Апрель 2018, 18:13:54 от Sharpnull »

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,
Фикс помог, полоса исчезла, насчет пикселей справа и снизу - не увидел никакой разницы, как ни старался. Зато заметил что не работают быстрые сохранения/загрузки. И выход на эльф тоже. Пробовал менять пути к сэйвам на карте, на флешке, безрезультатно.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll, спасибо за тестирование. Я попробую сделать полосы другого цвета, чтобы было лучше видно.
Exit to ELF? А в каких версиях он работал? Пробовал разные версии - чёрный экран, а в fceu.2016.12.01.elf вылет. Я не трогал это, если только случайно. Эта функция должна запускать BOOT.ELF?
Вы создали папки для сохранений mc0:/FCEUMM/fcs/ и mc0:/FCEUMM/sav/? Это если в настройках указан путь mc0:/FCEUMM/. Вот заметки от AKuHAK к версиям 2013 и 2014 годов, большая часть должна быть актуальна.

У меня есть ещё вопросы, если несложно:
* Названия файлов выводятся только на пол-экрана? Там кажется стоит разное количество выводимых символов в зависимости от режима Interlacing On/Off. Думал увеличить.
* Отключенный Interlacing растягивает шрифт (прикрепил картинку)?
* Power Off работает? Просто интересно, исправить такое на эмуляторе не получится.

Обновление: прикрепил fceu-packed_red_lines_TESTING.elf, там хорошо должны быть видны красные линии справа и внизу. Протестируйте.
Также попробовал скомпилировать со старой версией FCEU от 0.90i, вроде работает, только подключенный multitap тормозит игру на 44100Гц, без него нормально. Это странно, возможно в самом коде FCEU есть какая-то проблема. Прикрепил как fceu-packed.x.2.2.old'n'fast.elf :)
« Последнее редактирование: 15 Апрель 2018, 06:38:09 от Sharpnull »

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,
Exit to ELF? А в каких версиях он работал? Пробовал разные версии - чёрный экран, а в fceu.2016.12.01.elf вылет. Я не трогал это, если только случайно. Эта функция должна запускать BOOT.ELF?
Exit to Elf работает в 90i, запускает любой эльф по указанному пути в настройках, у меня это ule переименованный в BOOT.ELF. В версиях Akuhak и ваших функция не работает, черный экран.
 
Вы создали папки для сохранений mc0:/FCEUMM/fcs/ и mc0:/FCEUMM/sav/?
Не знал об этом раньше. Создал, сохранения заработали. В  90i (старой и новой) можно сохраняться и на флешку, что удобнее, чем только на кп. Только нужно обязательно выйти из эмуля после того как изменили и сохранили пути к сейвам, иначе будет косяк. Кстати проверил пару игр fds, работают и в новой 90i, в других версиях кроме старой 90i нет работают. Звук полностью не отрубается, играет один канал, видимо дополнительный для fds. Игры сильно тормозят, если обрубить последний канал возможно будет фулспид.
Насчер интерлейсинга. В режиме off сигнал выдается в 240p, его большинство современных fullhd тв через компонент не воспринимают, у меня тоже черный экран с надписью invalid format, когда интерлейс включен изображение выводится в 480i, этот формат является стандартным для ps2. Имхо лучше просто по умолчанию изменить эту опцию на on. Выключать деинтерлейс думаю будет полезно только владельцам элт телевизоров, это положительно скажется на картинке и все корректно будет отображаться. Вообще оптимальный вариант игры в этот эмуль для тех у кого fhd lcd - через gsm включить 480p, в самом телевизоре выставить соотношение 4:3, тогда картинка самая приятная и с правильными пропорциями.
Power off у меня работает во всех версиях.
По поводу красного пикселя. Сделал скриншоты трех версий, обычной, вчерашней тестовой, и сегодняшней, у первых двух разницы не видно, в третьей видны полосы.
« Последнее редактирование: 15 Апрель 2018, 17:34:24 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
В режиме off сигнал выдается в 240p
Там должно быть 224p/448i, похоже просто растяжение идёт. Вот это и плохо, если не знать размера экрана (наверно можно получить в коде), то не получится сделать правильное соотношение сторон. Сейчас при 4:3 ещё нормально выглядит, но не как в оригинале. О PAL я даже думать не хочу, PAL игры будут обрубаться сверху/снизу на NTSC экране.
В  90i (старой и новой) можно сохраняться и на флешку, что удобнее, чем только на кп.
Так вроде и здесь можно, просто когда меняют путь, папки снова нужно создавать, но я не пробовал. Точно не работает?

Из FDS пробовал только Bomberman, там звук отключался полностью (я не говорю о новой 90i). На самом деле звук я не отключаю, а ставлю частоту дискретизации в 0. Дикие тормоза тоже заметил, только без звука нормально шло.
Имхо лучше просто по умолчанию изменить эту опцию на on.
Так и сделаю.
По поводу красного пикселя.
Другие можно было не смотреть, просто у них чёрные полосы не видны. Значит это косяк версии от AKuHAK, экран растягивался не на 640, а на 639 и с высотой тоже самое. Этого не было в старых версиях 2013, 2014 годов, только c fceu.2016.12.01.elf.

Резюмирую:
* Interlacing On по умолчанию.
* Настоящие 640x448i, возможно сделаю кнопку для правильного соотношения сторон на 4:3, т. е. ширина 548.
* Переназначение кнопок всё ещё не делал, придётся сделать дополнительное меню, немного хлопотно.
* Посмотрю код для ELF от 90i и сделаю тестовую сборку, если покажется, что сможет сработать.
* FDS не буду трогать, вероятно проблема в коде FCEU.
« Последнее редактирование: 15 Апрель 2018, 21:57:39 от Sharpnull »

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Нашел причину неотрубающегося канала в fds. Она была в конфигурационном файле на кп. Поскольку тестил много разных версий и все они используют один и тот же конфиг, происходил конфликт в параметрах. Удалил конфиг, сохранился из новой версии - теперь звук в fds отключается полностью, без звука в играх фулспид.
Так вроде и здесь можно, просто когда меняют путь, папки снова нужно создавать, но я не пробовал. Точно не работает?
Копировал с кп на флешку папку fseumm с подпапками, указывал пути, все равно сохранения идут на кп. Пробовал также удалять подпапки для сэйвов из кп, тогда вообще не сохраняет. В принципе не критично.
В палитрах нашел несколько одинаковых (fseu = loopy's = mess) (PAL = Matthew conte's). Есть ещё пара интересных вариантов на замену, файлы палитр в виде .pal я бы прикрепил, если вам не сильно трудно конечно.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
FCEU и loopy's разные, просто похожи. Про mess не знаю, на вид как FCEU, нет возможности сравнить, посмотрю позже. PAL и Matthew conte's различаются некоторыми значениями, правда разница на 1 в компоненте RGB :) Не думаю, что стоит удалять.
А что особенного в ваших палитрах? Я не знаю какие авторитетнее, если какие-то более менее известные, то можно добавить.
--------
Посмотрел mess палитру, у неё два цвета по 0, а у FCEU заданы. Наверно mess можно удалить, да Matthew conte's впрочем тоже.
Обновил на гитхабе: исправление ширины/высоты, соотношение сторон, interlacing on. Выход в ELF в коде выглядит также, позже ещё посмотрю. Попробуйте выход в ELF сделать с сохранёнными настройками, я заметил что FDS ром не грузится, если не сохранить конфиг, биос не находит.
Кстати, я не переходил на старый FCEU, тот билд был просто так, потому что не уверен в стабильности. Возможно где-то отдельно выложу вариант с ним.
--------
Сохранения на жёстком диске у меня тоже не работают, в 90i работало.
--------
Нашёл в чём проблема, там путь до сохранений не используется :lol: Путь до сохранений и конфига задаётся либо по умолчанию, либо где место запуска эмулятора. Т. е. сейчас если запустить с hdd0:/fceu.elf, то конфиг будет hdd0:/FCEUltra.cnf, а сохранения hdd0:/sav, hdd0:/fcs. Попробуйте. Потом сделаю исправление, правда не знаю, что делать с этим функционалом, если только смотреть на наличие FCEUltra.cnf и так решать откуда грузиться.
« Последнее редактирование: 16 Апрель 2018, 07:57:42 от Sharpnull »

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Удалил папку FCEUMM с конфигом из mc0:/. Запустил эмуль с флешки т.е. mass:/fceumm.elf. Там же в корне создал папки sav, fcs. Запускаю эмуль, сохраняю конфиг.
Снова создается папка mc0:/FCEUMM с конфигом внутри, на флешке ничего не создалось и сэйвы не работают. А должно было создаться на флешке?

По палитрам две просьбы: fbx nes classic fs заменить на fbx nes classic, это окончательная версия от FirebrandX, снятая более точно. И добавить pal palette captured от Kinopio, эта палитра снята с паловского nes, по изображению более всего походит на нашу денди. Можно сделать так, чтобы в конфиге сохранялась инфа о палитре, чтобы не приходилось выбирать нужную при каждом запуске эмуля? Было бы очень удобно.

Оффлайн buh91

  • Пользователь
  • Сообщений: 73
  • Пол: Мужской
    • Просмотр профиля
Здравствуйте. Прошу прощения, что я внезапно пропал. Попал в больницу, поэтому тестировать пока не могу... Врачи не дают, говорят с телевизором и плойкой в палату нельзя   :'(

Добавлено позже:
А вы дорабатывает версию с мультитап или без?
« Последнее редактирование: 16 Апрель 2018, 18:47:56 от buh91 »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
на флешке ничего не создалось и сэйвы не работают. А должно было создаться на флешке?
Нет, нужно также создать sav, fcs и должен быть конфиг (забыл сказать), если его нет, то берётся с mc0:/... . Я сам не тестировал, позже попробую. Кстати, в old'n'fast версии, был задан путь до sav, fcs прямо в файлах FCEU, это ещё одна из причин, почему не хотел использовать старый FCEU. На самом деле неудачное название "Save path", так как путь используется и для BIOS от FDS.

Про палитры, дайте больше информации и ссылок, а то FirebrandX настрочил палитр, нужно как-то правильно задать имя. Пока что будет как вы написали.
Можно сделать так, чтобы в конфиге сохранялась инфа о палитре, чтобы не приходилось выбирать нужную при каждом запуске эмуля? Было бы очень удобно.
Добавлю. Но для VS UniSystem будет по умолчанию.

С Exit ELF я ничего не нашёл, код практически такой же остался по сравнению с 0.90i. Должно было работать.
--------
buh91, здоровья вам. Дорабатываю с мультитап, нет смысла какую-то другую версию брать :) Думаю добавить ещё несколько вещей.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Сайт FirebrandX. У него актуальных палитр всего 4 - smooth, composite direct, pvm style, nes classic. Остальные от FirebrandX можно и удалить, только если удалите YUV V3, надо добавить оригинальный Nestopia YUV.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Добавил новую версию на GitHub (у меня плохой английский, да).
Палитры:
Проверил палитры, со второй по Wavebeam (брал из libretro), сначала с сайта FirebrandX, после отсюда http://emulation.gametechwiki.com/index.php/Famicom_Color_Palette. Так вот совпадают, кроме FBX's NTSC Hardware palette, она не точная, не стал трогать. Заменил NES Classic (FBX-FS) на NES Classic (FBX), хотя они вроде разными предполагались. Добавил от Kinopio. Похожие не удалял. Цвета служебных сообщений (например, State saved) одинаковые и не зависят от палитры, раньше просто палитра (64 цвета) копировалась во все индексы, а их 256 и часть используется FCEU.
Конфиг:
Теперь сохраняется соотношение сторон и палитра. Пофиксил баг из-за которого после сохранения конфига пути до ELF и сохранений менялись места, скорее всего поэтому не работал Exit to ELF, но он должен был работать после перезагрузки эмулятора. Теперь путь до сохранений применяется сразу после сохранения конфига, а не после перезагрузки.

Объясню как работают конфиг и путь сохранений теперь:
Если рядом с fceu.elf лежит FCEUltra.cnf, то грузится он и путь до сохранений текущая папка (создавать fcs, sav нужно самому). Иначе грузится mc0:/FCEUMM/FCEUltra.cnf и используется путь сохранений из него.
Но когда сохраняется конфиг он всегда использует стандартный путь (mc0:/FCEUMM/FCEUltra.cnf).

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Список идей того, что ещё можно сделать, естественно не имею представления о сложностях воплощения того или иного, тем не менее озвучу. 
1.Добавить режим 480p в настройках экрана, чтобы обходиться без gsm.
2.Заставить эмуль упорядочивать игры по алфавиту (сейчас вроде по дате, новые добавленные в папку игры всегда внизу списка)
3. Когда прокручиваешь список игр строка выделения в самом низу, несовсем удобно, можно посередине, или чтобы при прокрутке вверх вниз смещалась на какое то количество строк, но не до конца видимого списка
4. В некоторых играх не работают турбо кнопки, например в Double dragon 3. Подозреваю что это из-за заданной по умолчанию максимальной частоты нажатий в секунду, не всем играм это подходит. Во многих других эмуляторах этот параметр регулируется. Можно создать аналогичный параметр в быстрых настройках с названием типа turbo rate speed или turbo pulse speed.
5.Там же в быстром меню добавить опцию фреймскипа (для тормозящих игр)
6. Можно добавить соотношение сторон 8:7 как в nes mini
7. Добавить поддержку dualshock 3. Это как бы не сильно нужно, но если дело только в драйверах то почему бы нет)
« Последнее редактирование: 17 Апрель 2018, 16:33:40 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll,
1. Нужно копаться в настройках экрана. Затрудняет pcsx2, на реальном железе может выглядеть по-другому.
2. Если повезёт, то один флаг. Файловый менеджер написан плохо, захламляет код обработка HDD, его нужно монтировать и пути конвертировать (что-то вроде: из hdd0:/раздел1/Папка в pfs1:/Папка).
3. Не тестировал столько элементов) Я так понимаю что всё видно, это главное.
4. Думал об этом, сейчас действительно стоит переключение между 1, 0, 1, 0... каждый кадр. В FCEUX есть сложные паттерны, обычные это 1010..., 100100..., 10001000... и т. п. + ещё сдвиг на количество кадров.
5. Он вроде отключен при компиляции, нужно смотреть код FCEU.
6. Best Fit (4:3 NTSC) - это оно и есть, оригинальное соотношение 256x224 = 8:7. У меня написано 4:3 NTSC, предполагая что выбран Display NTSC и соотношение сторон экрана 4:3, потому что я не знаю как определить текущее соотношение сторон пользователя.
7. А он что, не работает? Там же вроде кнопок столько же.

В общем, посмотрю некоторые пункты.
--------

Сделал тестовую сборку с 480p для Display: NTSC, Interlacing: Off. Попробуйте и скажите, работает ли без проблем. Меню будет немного растянуто вниз. Прикрепил файл.
Посмотрел как отображаются файлы/папки, там нет настроек, похоже необходимо сортировать список самому.
В PS2 вообще имя файла может быть больше 31 символа? В файловом менеджере uLF я не смог переименовать больше чем с 31 символом. На HDD тоже самое. Причём функции работы предполагают, что размер файла может быть 256 об этом написано и к файловой системе PFS. Предполагаю, что ограничение uLF.
--------

Опытным путём узнал, что на карте памяти ограничение 31 или 32 символа, а на HDD ограничения такого нет. Значит uLF просто ограниченный.
« Последнее редактирование: 18 Апрель 2018, 09:05:36 от Sharpnull »

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,
7. А он что, не работает? Там же вроде кнопок столько же.
Если специально не добавлять поддержку, не работает. Насколько я знаю умельцы добавляли поддержку DS3 только в OPL и PS2infogb.

Проверил 480p. Не работает, тот же черный экран с invalid format как и раньше. Но изменения все же есть. В gsm выставил 480p, во fceux выключил интерлейс - меню почти нормальное, лишь немного вытянуто. В играх стало больше видимых строк внизу, правда всё целиком по высоте не влезает в экран, через gsm нужно центровать.
Вообще, происходит следующее. По умолчанию во fceux на ps2 обрезается часть изображения  сверху и снизу на определенное количество строк, в эмулях на пк пользователь может сам выбирать количество обрезаемых строк, в retroarch на андроид также есть выбор crop overscan on/off. В тестовом билде 480p в режиме interlacing off, обрезка выключается. В общем, 480p если и допиливать, то он не должен затрагивать количество обрезаемых линий. В идеале - добавить on/off crop overscan, и не затрагивающий его 480p. Либо оставить все как есть.
« Последнее редактирование: 18 Апрель 2018, 11:36:57 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
В играх стало больше видимых строк внизу
А не должно было, у меня в pcsx2 и 448i (Interlacing On, как раньше), и 480p показывают одинаковую картинку до пикселя (тестировал только NTSC регион). Я думал проблема Invalid format в разрешении 640x224. Менял только высоту с 224 на 480 и значение отвечающее за отображаемую область, только вот для pcsx2 я подогнал это значение, а на реальном железе может не стоило.

Нашёл пример для тестирования режимов, там 480p по-другому задаётся, попробую сделать ещё одну сборку.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll, теперь вроде норм должно быть :) Должно обрезаться как раньше, а шрифт в меню чуть меньше. Тестируйте.
Если сработает, не знаю что делать с PAL. Не представляю кто будет пользоваться этим режимом и как он должен работать.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Проверил - работает. Обрезка тоже как надо. Только есть существенный  минус)). Само изображение в игре стало более растянутым по высоте и часть информации сверху и снизу не видна, просто не умещается в экран. В обычном же режиме и режиме 480p через gsm от верхнего и нижнего края изображения до самой рамки тв были черные полосы высотой с полсантиметра. Прокрутка по списку игр стала гораздо удобнее - выделенная строка посередине, но только в режиме 480p.
« Последнее редактирование: 19 Апрель 2018, 07:13:21 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
А что за информация на чёрных полосах? Сделайте фото "с" и "без" этого. Если полосы были из-за того, что в Interlace используется 448i, тогда боюсь соотношение сторон Best Fit было неправильным.
Cоотношение сторон 4:3? Я выставлял 640x480, но там можно до 704 по ширине судя по примеру. Ещё режим 720p есть, его можно для широкого экрана использовать, но придётся подстраивать картинку для Best Fit.

Прокрутка по списку игр стала гораздо удобнее - выделенная строка посередине
Это баг :lol: Есть место в коде, где задаётся количество вмещающихся файлов/папок на экране, я его не правил.

Я обновил программу, добавил алфавитную сортировку и иконки файлов/папок из uLE, только большая буква идёт раньше маленькой, в uLE наоборот. Добавил настройку управления, только для игровых кнопок, менюшные нельзя изменить. Ещё фикс: если нет конфига, путь сохранений используется по умолчанию, раньше он задавался только при чтении или сохранении конфига.

Режим 480p не добавлял. Я наверно уберу опцию Interlace и будет только режим: NTSC, PAL, 480p. Первые два очевидно Interlace.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
Sharpnull,
Сделал фото. Старался чтоб были заметны и физическая граница экрана и граница самого изображения в обоих режимах. В 480p изображение растянуто по вертикали и сверху/снизу обрезано, на кирпичах заметны некоторые горизонтальные полосы шире обычного. Надо бы стандартизировать строительные нормы)
Немного про соотношение сторон и минус режима best fit. Проведите такой эксперимент - включите из быстрого меню best fit, игру например jungle book и побегайте туда сюда, чтобы экран двигался влево/вправо. При этом если смотреть на стволы деревьев видно, что в движении все дергается по вертикали, рябит как под водой. А при отключеном best fit все четко и без ряби. Поэтому я его не использую, вместо этого включаю 4:3 в самом тв, так никаких изъянов при скроллинге нет.

Это баг 
Этот "баг" и был в списке моих хотелок под номером 3))

Я наверно уберу опцию Interlace
Не советовал бы, для ЭЛТ опция была полезна, 480p мало какие ЭЛТ модели поддерживают, для них 240p т.е. interlace off самое то.

 Поскольку появилось меню настройки кнопок, опцию на 4х игроков логичнее переместить туда же. Также как и настройку скорости турбо (если будете делать). Ещё можно добавить такие 3 варианта в настройки кнопок: A+B, A+B turbo (для суперприема в некоторых играх типа batman returns и tmnt 2 японского региона), и button hold  - функция виртуально держит нажатой ту или иную кнопку, например если привязать button hold на r1, в игре нажать r1 + любую кнопку, например turbo b, и отпустить, то эмуль будет воспринимать turbo b как нажатую кнопку, персонаж будет выполнять действие автоматически, например стрелять, удобно во всяких шутерах и леталках-стрелялках, отмена той же комбинацией. Вспомнил что такая опция есть на некоторых геймпадах и была в эмуле nes на старых смартфонах.
« Последнее редактирование: 19 Апрель 2018, 18:34:03 от Racooll »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5066
    • Просмотр профиля
Racooll,
По фото действительно сожралось около 8 пикселей + полосы. Возможно проблема из-за StartY - переменная, которая задаёт смещение экрана, она учитывается при центровки экрана. В эмуляторе центровка не работает. Возможно сделаю последний тестовый вариант без смещения.

Про Best Fit. Это просто установка ширины в 548, но не для экрана, а текстуры, которая отображает игру. Как уже говорил неоднократно, он с 4:3 и должен использоваться, предполагается, что 448i растягиваются до 480 и получается 640x480. У меня в эмуляторе неприятные эффекты при движении влево-вправо в любом случае с/без Best Fit, если только не включать фильтрацию, так что даже не знаю почему такая разница. Проблема конечно в растяжении. Нормально должно быть (не пробовал), если 448i и ширина экрана 512, но тогда телевизор должен не потерять соотношение сторон.

Не советовал бы, для ЭЛТ опция была полезна
Имелось же в виду убрать из опций, NTSC и PAL только в Interlace нормально и работают, то что было Interlace Off - какая-то неправильная установка режима, которая даже без GSM не работала, как мы узнали.

Скорость турбо добавлю, пункт меню перенесу. Остальное не буду делать, всё это хлопотно для меня.

Оффлайн Racooll

  • Пользователь
  • Сообщений: 96
    • Просмотр профиля
NTSC и PAL только в Interlace нормально и работают, то что было Interlace Off - какая-то неправильная установка режима, которая даже без GSM не работала, как мы узнали.
Interlace off работает прекрасно и правильно отображается, но только не на компонентном кабеле+full hd, как в моем случае, и не в эмуляторе, как в вашем. Проверил на композитном кабеле - все работает как и должно, картинка нормальная, буквы правильные. Будет работать и со scart rgb (там синхронизация по композиту). А на ЭЛТ телевизорах (толстых кинескопных) работает со всеми видами подключений.
« Последнее редактирование: 20 Апрель 2018, 08:09:57 от Racooll »